So konvertieren Sie eine UTC-Zeit in MEZ in java
Wie kann ich konvertieren UTC-Zeit zu MEZ evtl. mit yoda Zeit-Bibliothek in Java?
War ich triing wit, aber wie es aussieht bin ich dabei etwas falsch
DateTime dateTime = new LocalDateTime(utdDate.getTime()).toDateTime(DateTimeZone.forID("CET"));
wenn ich dieses bekomme ich aus der gleichen Zeit wie ich in.
InformationsquelleAutor simonC | 2014-04-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Rate ich dir dringend zu vermeiden, die Verwendung von timezone Namen wie "MEZ" aufgrund der inhärenten lokalisierten Natur. Dies kann nur in Ordnung sein in der formatierten Ausgabe für den Endanwender, aber nicht in der internen Kodierung.
CET steht für viele andere Zeitzone ids wie die IANA-IDs
Europe/Berlin
,Europe/Paris
etc. In meiner Zeitzone "Europa/Berlin" Ihr code funktioniert wie gefolgt:Denken Sie daran, dass der Ausdruck
new LocalDateTime(utdDate.getTime())
implizit verwendet das system die Zeitzone für Konvertierung und wird daher nichts ändern, wenn Ihr MEZ-zone ist intern anerkannt, mit gleichen Zeitzone offset im Vergleich mit Ihrem system-Zeitzone. Um zu erzwingen, JodaTime zu erkennen, eine UTC-Eingabe sollten Sie angeben, wie auf diese Weise:Diesem Beispiel behält das instant, das ist die absolute Zeit in Millisekunden seit der UNIX-Epoche. Wenn Sie möchten, erhalten die Felder und ändert dadurch die sofortige, dann können Sie mit der Methode
withZoneRetainFields
:InformationsquelleAutor Meno Hochschild