Je n'ai jamais eu à convertir l'heure vers et depuis UTC. J'ai récemment reçu une demande pour que mon application soit au fuseau horaire, et je me tourne en rond. Beaucoup d'informations sur la conversion de l'heure locale en UTC, que j'ai trouvé assez élémentaire (peut-être que je fais aussi mal), mais je ne trouve aucune information sur la conversion facile de l'heure UTC en fuseau horaire des utilisateurs finaux.
En un mot, et l'application Android m'envoie des données (appengine app) et dans ces données est un horodatage. Pour stocker cet horodatage en heure UTC que j'utilise:
datetime.utcfromtimestamp(timestamp)
Cela semble fonctionner. Lorsque mon application stocke les données, elles sont stockées avec 5 heures d'avance (je suis EST -5)
Les données sont stockées sur BigTable d'Appengine, et lorsqu'elles sont récupérées, elles apparaissent sous forme de chaîne comme ceci:
"2011-01-21 02:37:21"
Comment convertir cette chaîne en DateTime dans le fuseau horaire correct des utilisateurs?
En outre, quel est le stockage recommandé pour les informations de fuseau horaire d'un utilisateur? (Comment stockez-vous généralement les informations tz, c'est-à-dire: "-5: 00" ou "EST", etc., etc.?) Je suis sûr que la réponse à ma première question peut contenir un paramètre et les réponses la seconde.