Sie können auch LocalDate.parse()
oder LocalDateTime.parse()
auf einen String
verwenden, ohne ihm ein Muster anzugeben, wenn der String
im ISO 8601-Format vorliegt.
Zum Beispiel,
String strDate = "2015-08-04";
LocalDate aLD = LocalDate.parse(strDate);
System.out.println("Datum: " + aLD);
String strDatewithTime = "2015-08-04T10:11:30";
LocalDateTime aLDT = LocalDateTime.parse(strDatewithTime);
System.out.println("Datum mit Zeit: " + aLDT);
Ausgabe,
Datum: 2015-08-04
Datum mit Zeit: 2015-08-04T10:11:30
Und verwenden Sie DateTimeFormatter
nur, wenn Sie mit anderen Datumsformaten umgehen müssen.
Zum Beispiel, in dem folgenden Beispiel stellt dd MMM uuuu den Tag des Monats (zwei Ziffern), drei Buchstaben des Monatsnamens (Jan, Feb, Mär,...) und ein vierstelliges Jahr dar:
DateTimeFormatter dTF = DateTimeFormatter.ofPattern("dd MMM uuuu");
String anotherDate = "04 Aug 2015";
LocalDate lds = LocalDate.parse(anotherDate, dTF);
System.out.println(anotherDate + " wird analysiert als " + lds);
Ausgabe
04 Aug 2015 wird analysiert als 2015-08-04
Denken Sie auch daran, dass das DateTimeFormatter
-Objekt bidirektional ist; es kann sowohl Eingaben analysieren als auch Ausgaben formatieren.
String strDate = "2015-08-04";
LocalDate aLD = LocalDate.parse(strDate);
DateTimeFormatter dTF = DateTimeFormatter.ofPattern("dd MMM uuuu");
System.out.println(aLD + " wird formatiert als " + dTF.format(aLD));
Ausgabe
2015-08-04 wird formatiert als 04 Aug 2015
(Siehe vollständige Liste der Muster für Datumsformatierung und -analyse im DateFormatter.)
Symbol Bedeutung Darstellung Beispiele
------ ------- ------------ -------
G Ära Text AD; Anno Domini; A
u Jahr Jahr 2004; 04
y Jahr-Ära Jahr 2004; 04
D Tag des Jahres Nummer 189
M/L Monat des Jahres Nummer/Text 7; 07; Jul; July; J
d Tag des Monats Nummer 10
Q/q Quartal des Jahres Nummer/Text 3; 03; Q3; 3. Quartal
Y Jahreszahl der Woche Jahr 1996; 96
w Woche des jahrbasierten Jahres Nummer 27
W Woche des Monats Nummer 4
E Wochentag Text Di; Dienstag; T
e/c lokaler Wochentag Nummer/Text 2; 02; Di; Dienstag; T
F Woche des Monats Nummer 3
a AM-PM-des-Tages Text PM
h Uhrzeit des Vormittags (1-12) Nummer 12
K Stunde des Vormittags (0-11) Nummer 0
k Uhrzeit des Tages (1-24) Nummer 0
H Stunde des Tages (0-23) Nummer 0
m Minute der Stunde Nummer 30
s Sekunde der Minute Nummer 55
S Bruchteil der Sekunde Bruchteil 978
A Millisekunden des Tages Nummer 1234
n Nanosekunde Nummer 987654321
N Nanosekunden des Tages Nummer 1234000000
V Zeitzonen-ID Zeitzonen-ID America/Los_Angeles; Z; -08:30
z Zeitzonenname Zeitzonenname Pacific Standard Time; PST
O Lokalisierte Zeitzone-Versatz Versatz-O GMT+8; GMT+08:00; UTC-08:00;
X Zeitzonenversatz 'Z' für Null Versatz-X Z; -08; -0830; -08:30; -083015; -08:30:15;
x Zeitzonenversatz Versatz-x +0000; -08; -0830; -08:30; -083015; -08:30:15;
Z Zeitzonenversatz Versatz-Z +0000; -0800; -08:00;
p Nächsten ausführen Modifikator 1
' Text ausblenden Begrenzer
'' einfaches Anführungszeichen Literal '
[ optionale Sektion starten
] optionaler Abschnittsende
# für zukünftige Verwendung reserviert
{ für zukünftige Verwendung reserviert
} für zukünftige Verwendung reserviert