Hemos visto un problema extraño en algunas máquinas con Windows XP que implican la zona horaria "Tiempo universal coordinado". No todos los equipos con Windows XP parecen tenerlo, pero en los que sí, el siguiente programa Java sencilla¿Por qué Java devuelve una fecha en GMT-4.5 al elegir la zona horaria del tiempo universal coordinado en Windows?
public class TimeTest {
public static void main(String[] args) {
System.out.println(java.util.TimeZone.getDefault());
System.out.println(new java.util.Date());
}
}
en JDK 1.6.0_06 impresiones:
sun.util.calendar.ZoneInfo[id="America/Caracas",offset=-16200000,dstSavings=0,useDaylight=false,transitions=5,lastRule=null] Fri Nov 13 05:34:14 VET 2009
(es decir, 4 horas y media detrás GMT). Debo añadir que estoy en Londres y nunca he estado en Sudamérica. :-)
Mis preguntas son:
- dónde viene Java obtener esta zona horaria de? Pensé que se suponía que el Tiempo Universal coordinado sería el nuevo nombre para GMT.
- ¿Por qué algunas máquinas con Windows tienen esta zona horaria pero no otras?
Vea también http://stackoverflow.com/questions/2106525/java-incorrect-timezone – Vadzim