Ich möchte ein Joda Time UTC DateTime-Objekt in lokale Zeit umwandeln.Joda-Zeit: UTC in Lokal umwandeln
Hier ist eine mühsame Art, es zu tun, die zu funktionieren scheint. Aber es muss einen besseren Weg geben.
Hier ist der Code (in Scala) ohne umgebende Erklärungen:
val dtUTC = new DateTime("2010-10-28T04:00")
println("dtUTC = " + dtUTC)
val dtLocal = timestampLocal(dtUTC)
println("local = " + dtLocal)
def timestampLocal(dtUTC: DateTime): String = {
// This is a laborious way to convert from UTC to local. There must be a better way.
val instantUTC = dtUTC.getMillis
val localDateTimeZone = DateTimeZone.getDefault
val instantLocal = localDateTimeZone.convertUTCToLocal(instantUTC)
val dtLocal = new DateTime(instantLocal)
dtLocal.toString
}
Hier ist der Ausgang:
dtUTC = 2010-10-28T04: 00: 00.000 + 11: 00 local = 2010- 10-28T15: 00: 00.000 + 11: 00
Perfekt. Ich passte es ein bisschen weiter südlich nach Melbourne an. – Koala3