Buscar
Social
Ofertas laborales ES

Foro sobre Java EE > Problema con TimeZone

Hola,
Tengo una fecha en String del tipo "June 14 2013 08:47:34 WEST" y quiero pasarla a otra fecha de otro uso horario. He usado Calendar, pero tengo que introducir WET o CET (si fuera CEST) pero no me acepta WEST. Añado el código y veréis como introduciendo WET o CET si funciona, pero no es así si añadimos WEST o CEST. ¿Alguien sabe la razón?

Calendar localTime = new GregorianCalendar(TimeZone.getTimeZone("WET"));
System.out.println(localTime.getTimeZone());
localTime.set(Calendar.YEAR, 2013);
localTime.set(Calendar.MONTH, 12);
localTime.set(Calendar.DAY_OF_MONTH, 14);
localTime.set(Calendar.HOUR, 7);
localTime.set(Calendar.MINUTE, 47);
localTime.set(Calendar.SECOND, 34);

int hour = localTime.get(Calendar.HOUR);
int minute = localTime.get(Calendar.MINUTE);
int second = localTime.get(Calendar.SECOND);

TimeZone z = localTime.getTimeZone();
int offset = z.getRawOffset();
System.out.println(offset);


// Print the local time
System.out.printf("Local time : %02d:%02d:%02d\n", hour, minute, second);


// Create a calendar object for representing a Germany time zone. Then we
// wet the time of the calendar with the value of the local time

Calendar germanyTime = new GregorianCalendar(TimeZone.getTimeZone("CET"));
TimeZone zz = germanyTime.getTimeZone();
int offsett = zz.getRawOffset();
System.out.println(offsett);
germanyTime.setTimeInMillis(localTime.getTimeInMillis());
System.out.println(germanyTime.getTimeZone());
hour = germanyTime.get(Calendar.HOUR);
minute = germanyTime.get(Calendar.MINUTE);
second = germanyTime.get(Calendar.SECOND);

// Print the local time in Germany time zone
System.out.printf("Germany time: %02d:%02d:%02d\n", hour, minute, second);

Gracias,
Rodrigo

junio 14, 2013 | Unregistered CommenterRodrigo