2013-05-27 4 views
1

incorrect Si une partie des données qui RestKit reçoit de mon serveur est un horodatage formaté comme 2013-05-27 20:32:26 UTC, et plus tard je veux savoir la différence entre l'heure et cette date, je neRestKit Date de Parsing Utilisations Fuseau horaire

NSTimeInterval difference = [[NSDate date] timeIntervalSinceDate:dateFromRestKit]; 

Mais cela semble toujours être éteint pour moi par 1 heure, et je suppose que c'est parce que je suis sur BST, qui est UTC + 1. Donc, je pense que RestKit ignore le fuseau horaire spécifié dans la chaîne de date, et est en train d'analyser la date en utilisant le fuseau horaire actuel du système. Je comprends qu'il y a peut-être une raison technique pour laquelle il ne tient pas compte du fuseau horaire, mais j'ai trouvé que tout ce temps était très difficile à contourner, donc je ne suis pas sûr.

Comment puis-je déterminer la bonne différence entre les temps?

+0

L'horodatage que vous indiquez n'inclut pas le fuseau horaire.Le serveur envoie-t-il l'heure UTC (ce qui est attendu par RestKit) – Wain

+0

@Wain oui, l'heure du serveur est UTC –

+0

@Wain horodatage que j'ai inclus dit UTC à la fin, c'est sûrement le fuseau horaire –

Répondre

0

Même si votre horodatage contient le format UTC, essayez de spécifier à nouveau le fuseau horaire.

Si vous souhaitez que la différence de deux fuseaux horaires date dans 'UTC', convertissez l'autre au format UTC puis recherchez l'intervalle de temps.

Faites-moi savoir, si n'importe quelle requête. Ou si possible, postez votre code, pour avoir plus de clarté sur votre question. (:

+0

J'essaie de trouver la différence, mais le temps que me donne RestKit est éteint Comment dois-je spécifier le fuseau horaire? –

+0

Comme dans votre question, le temps de repos est "2013-05-27 20:32:26 UTC" .Cela signifie que votre fuseau horaire est au format UTC. –

Questions connexes