Heim > Java > javaLernprogramm > Warum führt meine Java-Datumsumrechnung zu einem falschen Monat?

Warum führt meine Java-Datumsumrechnung zu einem falschen Monat?

DDD
Freigeben: 2024-11-10 05:21:02
Original
314 Leute haben es durchsucht

Why does my Java date conversion result in an incorrect month?

Problem bei der Konvertierung des Java-Datumsformats: Falscher Monat bei der Konvertierung

In Java ist es beim Konvertieren von Datumsangaben zwischen verschiedenen Formaten wichtig, das richtige zu verwenden Formatspezifizierer, um genaue Konvertierungen sicherzustellen. In diesem Fall entsteht das Problem durch einen falschen Formatbezeichner in der eingegebenen Datumsformatzeichenfolge.

Problem:

Der folgende Codeausschnitt versucht, ein Datum aus dem zu konvertieren Format „JJJJ-MM-TT“ in das Format „TT MMMM JJJJ“. Die resultierende Monatsumrechnung ist jedoch falsch.

1

2

3

4

5

6

7

8

9

10

11

12

13

String dateStr = "2011-12-15";

String fromFormat = "yyyy-mm-dd";

String toFormat = "dd MMMM yyyy";

 

try {

    DateFormat fromFormatter = new SimpleDateFormat(fromFormat);

    Date date = (Date) fromFormatter.parse(dateStr);

 

    DateFormat toformatter = new SimpleDateFormat(toFormat);

    String result = toformatter.format(date);

} catch (ParseException e) {

    e.printStackTrace();

}

Nach dem Login kopieren

Erwartetes Ergebnis:

"15. Dezember 2011"

Tatsächliches Ergebnis:

"15. Januar 2011“

Falscher Formatbezeichner:

Das Problem wird durch die Verwendung von „mm“ in der Eingabedatumsformatzeichenfolge verursacht. Im Java SimpleDateFormat steht „mm“ für Minuten, nicht für Monate. Um Monate anzugeben, lautet der korrekte Formatbezeichner „MM“.

Lösung:

Um dieses Problem zu beheben, aktualisieren Sie einfach die Eingabedatumsformatzeichenfolge, um „MM“ zu verwenden. seit Monaten:

1

String fromFormat = "yyyy-MM-dd";

Nach dem Login kopieren

Richtiges Ergebnis:

Nach dieser Änderung wurde die Das Code-Snippet erzeugt die korrekte Monatskonvertierung: „15. Dezember 2011“.

Das obige ist der detaillierte Inhalt vonWarum führt meine Java-Datumsumrechnung zu einem falschen Monat?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage