Je veux convertir un ZonedDateTime
d'un String
dans le format ("dd/MM/yyyy - hh:mm")
. Je sais que c'est possible dans Joda-Time d'autres types, en utilisant seulement leur toString("dd/MM/yyyy - hh:mm")
....Mais cela ne fonctionne pas avec ZonedDateTime.toString()
.
Comment puis-je formater un ZonedDateTime
d'un String
?
EDIT:
J'ai essayé d'imprimer l'heure dans un autre fuseau horaire et le résultat semble être toujours la même:
ZonedDateTime date = ZonedDateTime.now();
ZoneId la = ZoneId.of("America/Los_Angeles");
ZonedDateTime date2 = date.of(date.toLocalDateTime(), la);
// 24/02/2017 - 04:53
System.out.println(DateTimeFormatter.ofPattern("dd/MM/yyyy - hh:mm").format(date));
// same result as the previous one
// 24/02/2017 - 04:53
System.out.println(DateTimeFormatter.ofPattern("dd/MM/yyyy - hh:mm").format(date2));
Et je ne suis pas dans le même fuseau horaire que Los Angeles.
EDIT 2:
Trouvé comment changer les fuseaux horaires:
// Change this:
ZonedDateTime date2 = date.of(date.toLocalDateTime(), la); // incorrect!
// To this:
ZonedDateTime date2 = date.withZoneSameInstant(la);