Java8 DateTimeFormatter am / pm

Ich versuche einige Daten zu analysieren, aber der DateTimeParser scheint nicht mit mir übereinzustimmen, was gültig ist

import java.time.ZonedDateTime
import java.time.format.DateTimeFormatter
import java.util.Locale

ZonedDateTime.parse("Wed Jul 16, 2016 4:38pm EDT", DateTimeFormatter.ofPattern("EEE MMM dd, yyyy hh:mma z", Locale.US))

Wenn ich das versuche, steht

java.time.format.DateTimeParseException: Text 'Wed Jul 16, 2016 4:38pm EDT' could not be parsed at index 17

So stimmt etwas mit den Stunden nicht? Wenn ich ein 'h' fallen lasse, wird es weiter (obwohl es nur meine Stunden mit 0 auffüllen sollte), aber dann mag es das PM-Zeug nicht

ZonedDateTime.parse("Wed Jul 16, 2016 4:38pm EDT", DateTimeFormatter.ofPattern("EEE MMM dd, yyyy h:mma z", Locale.US))
java.time.format.DateTimeParseException: Text 'Wed Jul 16, 2016 4:38pm EDT' could not be parsed at index 21

Ich weiß nicht, was genau sein Problem ist. Wenn ich 'hh: mmaa' als Muster versuche, heißt es, dass es keine zwei mag und jetzt stecke ich fest, da die Fehlermeldungen nicht hilfreich sind.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage