Cet extrait de code analyse toujours la date dans le fuseau horaire actuel, et non dans le fuseau horaire de la chaîne analysée.Comment puis-je analyser une date incluant le fuseau horaire avec 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
Il produit:
dateTime = 2009-08-24T04:36:46.000+02:00
alors que je pense:
dateTime = 2009-08-24T04:36:46.000+10:00
Toutes les idées ce que je fais mal?
Vous devez accepter votre réponse. –
Merci: D Vous êtes un génie! – mgonto
IMO, le comportement par défaut de 'DateTimeFormatter' semble violer le" principe du moindre étonnement ", en particulier dans le contexte d'unmarshaller. Merci Steve d'avoir mis au jour 'withOffsetParsed()'. –