Sto cercando di convertire la data locale in UTC utilizzando Joda Time. Il codice che ho usato è mostrato qui sotto e funziona benissimo.JodaTime: conversione dell'ambiguità locale in UTC
Date localDate = new Date();
System.out.println("Local Date : " + localDate);
DateTimeZone tz = DateTimeZone.getDefault();
Date utcDate = new Date(tz.convertLocalToUTC(localDate.getTime(), false));
System.out.println("UTC Date : " + utcDate);
Output :
Local Date : Wed May 29 11:54:46 EEST 2013
UTC Date : Wed May 29 08:54:46 EEST 2013
Ma, se io mando UTC Data come parametro al metodo DateTimeZone.convertLocalToUTC(), ma diminuisce anche l'ora per 3. Tuttavia, dal momento che è UTC Data, mi aspetto che non convertire di nuovo la data. È un bug o mi sto perdendo qualcosa?
Date localDate = new Date();
System.out.println("Local Date : " + localDate);
DateTimeZone tz = DateTimeZone.getDefault();
Date utcDate = new Date(tz.convertLocalToUTC(localDate.getTime(), false));
System.out.println("UTC Date : " + utcDate);
Date utcDate2 = new Date(tz.convertLocalToUTC(utcDate.getTime(), false));
System.out.println("UTC Date 2 : " + utcDate2);
Output :
Local Date : Wed May 29 11:54:46 EEST 2013
UTC Date : Wed May 29 08:54:46 EEST 2013
UTC Date 2 : Wed May 29 05:54:46 EEST 2013