Este fragmento de código siempre analiza la fecha en la zona horaria actual, y no en la zona horaria de la cadena que se está analizando.Cómo puedo analizar una fecha, incluida la zona horaria con Joda Time
final DateTimeFormatter df = DateTimeFormat
.forPattern("EEE MMM dd HH:mm:ss 'GMT'Z yyyy");
final DateTime dateTime = df
.parseDateTime("Mon Aug 24 12:36:46 GMT+1000 2009");
System.out.println("dateTime = " + dateTime);
// outputs dateTime = 2009-08-24T04:36:46.000+02:00
Genera:
dateTime = 2009-08-24T04:36:46.000+02:00
mientras que yo esperaba:
dateTime = 2009-08-24T04:36:46.000+10:00
Alguna idea de lo que estoy haciendo mal?
Debe aceptar su respuesta. –
Gracias: D ¡Eres un genio! – mgonto
IMO, el comportamiento predeterminado de 'DateTimeFormatter' parece violar el" principio de menor asombro ", especialmente en el contexto de un unmarshaller. Gracias Steve por desenterrar 'withOffsetParsed()'. –