Wenn ich etwas falsch mache ...TimeZone Offset zeigt ungültigen Wert
Ich lebe in Polen (GMT + 2). Wenn ich das schreibe, sind wir in der Sommerzeit. Der folgende Code, sagt aber, dass der GMT Zeitversatz ist nur 1 Stunde statt 2.
Calendar mCalendar = new GregorianCalendar();
TimeZone mTimeZone = mCalendar.getTimeZone();
System.out.println(mTimeZone);
int mGMTOffset = mTimeZone.getRawOffset();
System.out.printf("GMT offset is %s hours", TimeUnit.HOURS.convert(mGMTOffset, TimeUnit.MILLISECONDS));
druckt GMT Offset 1 Stunde
Das Gleiche gilt für andere Zeitzonen passiert, zum Beispiel New York, das ist GMT-4:
Calendar mCalendar = new GregorianCalendar(TimeZone.getTimeZone("America/New_York"));
druckt GMT -5 Stunden
Check hier http://stackoverflow.com/questions/10545960/how-to-tackle-daylight-savings-using-timezone-in- Java – Karthik