Heim >Java >javaLernprogramm >Warum erzeugt meine Java-Datumsumwandlung den falschen Monat?

Warum erzeugt meine Java-Datumsumwandlung den falschen Monat?

DDD
DDDOriginal
2024-11-06 08:14:021185Durchsuche

Why is My Java Date Conversion Producing the Wrong Month?

Problem bei der Konvertierung des Java-Datumsformats: Falsche Monatsdarstellung

Problem aufgetreten

Beim Versuch, ein Datum mit Java von einem Format in ein anderes zu konvertieren, einige Benutzer sind auf ein Problem gestoßen, bei dem der Monat falsch gerendert wird. Insbesondere bei der Konvertierung von einem Format wie „JJJJ-MM-TT“ in „TT MMMM JJJJ“ erscheint der resultierende Monat als folgender Monat (z. B. „01/12/21“ wird zu „01. Januar 2021“ statt „01 Dezember 2021").

Falsche Formatangabe

Die Hauptursache für dieses Problem liegt in der falschen Angabe der fromFormat-Zeichenfolge. Im bereitgestellten Beispiel ist fromFormat als „JJJJ-MM-TT“ definiert. Allerdings bezeichnet „mm“ in der Java SimpleDateFormat-Klasse Minuten, nicht Monate. Um Monate korrekt darzustellen, sollte der Formatbezeichner „MM“ sein.

Korrigierter Code

Um dieses Problem zu beheben, sollte der Code wie folgt aktualisiert werden:

String dateStr = "2011-12-15";
String fromFormat = "yyyy-MM-dd";
String toFormat = "dd MMMM yyyy";

try {
    DateFormat fromFormatter = new SimpleDateFormat(fromFormat);
    Date date = fromFormatter.parse(dateStr);

    DateFormat toFormatter = new SimpleDateFormat(toFormat);
    String result = toFormatter.format(date);
    
    System.out.println(result); // Prints "15 December 2011"
} catch (ParseException e) {
    e.printStackTrace();
}

Das obige ist der detaillierte Inhalt vonWarum erzeugt meine Java-Datumsumwandlung den falschen Monat?. 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