Heim >Java >javaLernprogramm >Wie analysiere ich eine Datumszeichenfolge mit abgekürzten Tages- und Monatsnamen in Java?

Wie analysiere ich eine Datumszeichenfolge mit abgekürzten Tages- und Monatsnamen in Java?

Barbara Streisand
Barbara StreisandOriginal
2024-11-17 05:21:03986Durchsuche

How to Parse a Date String with Abbreviated Day and Month Names in Java?

Datumszeichenfolgen in Datumsobjekte analysieren

Das Parsen von Datumszeichenfolgen in Datumsobjekte ist eine häufige Aufgabe in der Programmierung. Die Verwendung des falschen Musters kann jedoch zu Ausnahmen führen.

Problem

Der folgende Codeausschnitt versucht, die Datumszeichenfolge „Do, 28. September, 20:29:30 JST“ zu analysieren 2000" in ein Datumsobjekt:

String target = "Thu Sep 28 20:29:30 JST 2000";
DateFormat df = new SimpleDateFormat("E MM dd kk:mm:ss z yyyy");
Date result = df.parse(target);

Dieser Code löst jedoch eine Ausnahme aus:

java.text.ParseException: Unparseable date: "Thu Sep 28 20:29:30 JST 2000"

Lösung

Das Problem liegt darin das Datumsformatmuster. Das Muster „E MM dd kk:mm:ss z yyyy“ verwendet die folgenden Abkürzungen:

  • E für eine dreibuchstabige Tagesabkürzung
  • MM für eine dreibuchstabige Monatsabkürzung

In der bereitgestellten Datumszeichenfolge sind die Abkürzungen für Tag und Monat jedoch nicht 3 Zeichen lang. Um dies zu beheben, verwenden Sie das folgende Muster:

DateFormat df = new SimpleDateFormat("EEE MMM dd kk:mm:ss z yyyy", Locale.ENGLISH);

Dieses Muster gibt Folgendes an:

  • EEE für eine aus drei Buchstaben bestehende Tagesabkürzung auf Englisch
  • MMM für 3- Buchstaben-Monatsabkürzung auf Englisch

Zusätzliche Überlegungen

Erwägen Sie die Verwendung von „HH“ anstelle von „kk“ für die Stundendarstellung. Weitere Informationen zu Datumsformatierungsmustern finden Sie in der Java-Dokumentation.

Das obige ist der detaillierte Inhalt vonWie analysiere ich eine Datumszeichenfolge mit abgekürzten Tages- und Monatsnamen in Java?. 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