Ich musste nie Zeit von und nach UTC umrechnen. Vor kurzem hatte ich die Bitte, meine App zeitzonenabhängig zu machen, und ich habe mich selbst im Kreis geführt. Viele Informationen zum Konvertieren der Ortszeit in UTC, die ich als ziemlich elementar empfand (vielleicht mache ich das auch falsch), aber ich kann keine Informationen zum einfachen Konvertieren der UTC-Zeit in die Zeitzone des Endbenutzers finden.
Kurz gesagt, die Android App sendet mir Daten (Appengine App) und innerhalb dieser Daten befindet sich ein Zeitstempel. Um diesen Zeitstempel in der von mir verwendeten Zeit zu speichern:
datetime.utcfromtimestamp(timestamp)
Das scheint zu funktionieren. Wenn meine App die Daten speichert, werden sie 5 Stunden im Voraus gespeichert (ich bin EST -5).
Die Daten werden in der BigTable von Appengine gespeichert und beim Abrufen als Zeichenfolge wie folgt ausgegeben:
"2011-01-21 02:37:21"
Wie konvertiere ich diese Zeichenfolge in eine DateTime in der korrekten Zeitzone des Benutzers?
Was ist der empfohlene Speicher für Zeitzoneninformationen eines Benutzers? (Wie speichert man normalerweise tz-Informationen, dh: "-5: 00" oder "EST" usw. usw.?) Ich bin sicher, dass die Antwort auf meine erste Frage einen Parameter enthält, der die Antworten auf die zweite Frage enthält.