Heim >Java >javaLernprogramm >Warum wird beim Parsen von „2010-10-02T12:23:23Z' in der Datums-API von Java „Unzulässiges Musterzeichen ‚T'' ausgegeben?

Warum wird beim Parsen von „2010-10-02T12:23:23Z' in der Datums-API von Java „Unzulässiges Musterzeichen ‚T'' ausgegeben?

Linda Hamilton
Linda HamiltonOriginal
2024-12-08 20:58:18623Durchsuche

Why Does Parsing

Ungültiges Musterzeichen „T“ beim Parsen einer Datumszeichenfolge in java.util.Date

Frage:

Beim Versuch, eine Datumszeichenfolge wie zu analysieren „2010-10-02T12:23:23Z“ mit der Java Date API wird eine Ausnahme ausgelöst: „java.lang.IllegalArgumentException: Unzulässiges Musterzeichen ‚T‘“. Warum passiert das und ist es notwendig, die Zeichenfolge manuell zu teilen und zu analysieren?

Antwort:

Das „T“-Zeichen in der Zeichenfolge, das die Zeit darstellt Trennzeichen ist die Ursache des Problems. Um dieses Problem zu beheben, muss das „T“-Zeichen in der Musterzeichenfolge durch einfache Anführungszeichen ('') maskiert werden. Das korrekte Muster sollte „yyyy-MM-dd'T'hh:mm:ssZ“ lauten.

Beispiel:

String date = "2010-10-02T12:23:23Z";
String pattern = "yyyy-MM-dd'T'hh:mm:ssZ";
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
try {
    Date d = sdf.parse(date);
    System.out.println(d.getYear());
} catch (ParseException e) {
    e.printStackTrace();
}

Alternativ wird für Java 8 und höher empfohlen Verwenden Sie stattdessen Instant.parse, das einen robusteren und moderneren Ansatz zum Parsen von Daten bietet.

Instant.parse("2015-04-28T14:23:38.521Z")

Das obige ist der detaillierte Inhalt vonWarum wird beim Parsen von „2010-10-02T12:23:23Z' in der Datums-API von Java „Unzulässiges Musterzeichen ‚T'' ausgegeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn