Datum AM / PM parsen

Hallo,

ich bekomme es leider nicht hin und finde auch nichts im Netz.

Code:
  SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm aa");
    Date date = df.parse("2011-08-23 1:00 PM");
    df = new SimpleDateFormat("HH");
    System.out.println(df.format(date));

Ich bekomme immer, 01 angezeigt und nie 13 ;( ..

Was mache ich falsch?
Danke schon mal für etwaige Hilfe im Voraus!
 
Bei ner 12-Stunden-Ausgabe (AM/PM) gibt es doch defitionsgemäß keine 13, oder? ???:L

Java:
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm aa");
Date date = df.parse("2011-08-23 1:00 PM");
df = new SimpleDateFormat("HH");
System.out.println(df.format(date));
 
Bin selbst gerade draufgekommen.

Hab die JavaDoc aufgeschlagen.
SimpleDateFormat (Java 2 Platform SE v1.4.2)

Bei H steht:
Code:
Hour in day (0-23)

1 ist dabei nun mal die erste/zweite Stunde des Tages, egal ob bei AM oder PM.

Darunter bei h steht:
Code:
Hour in am/pm (0-11)

Also setzt/gibt das das Zeitformat nach der jeweiligen AM/PM-wieauchimmerdasheißt-Angabe.


Soweit das Denkmuster, dann einfach eine neue Klasse in Eclipse und getestet.
 

Zurück
Oben