Heim > Java > javaLernprogramm > Warum analysiert SimpleDateFormat Datumsangaben falsch im Format „JJJJ-MM-TT HH:mm' und wie kann dieses Problem gelöst werden?

Warum analysiert SimpleDateFormat Datumsangaben falsch im Format „JJJJ-MM-TT HH:mm' und wie kann dieses Problem gelöst werden?

Mary-Kate Olsen
Freigeben: 2024-11-03 00:07:30
Original
944 Leute haben es durchsucht

Why Does SimpleDateFormat Incorrectly Parse Dates in the

Datum und Uhrzeit im Format „JJJJ-MM-TT HH:mm“ mit SimpleDateFormat analysieren

Problemeinführung:

Beim Versuch, einen String im Format „JJJJ-MM-TT HH:mm“ mithilfe von SimpleDateFormat zu analysieren, stoßen Benutzer möglicherweise auf falsche Datums- und Uhrzeitergebnisse. Insbesondere stimmt das analysierte Datum möglicherweise nicht mit dem erwarteten Datum überein.

Frage:

Warum analysiert SimpleDateFormat Datumsangaben im Format „JJJJ-MM-TT HH:mm“ falsch? Format? Wie kann dieses Problem gelöst werden?

Antwort:

SimpleDateFormat verwendet Musterbuchstaben, bei denen die Groß-/Kleinschreibung beachtet wird, um Eingabezeichenfolgen zu analysieren. Beim Jahresformat steht „YYYY“ für das ganze Jahr mit führenden Nullen, während der Kleinbuchstabe „yyyy“ für das Jahr ohne führende Nullen steht. Im bereitgestellten Code wurde der Musterbuchstabe „YYYY“ falsch verwendet, was zu einer unerwarteten Datumsanalyse führte.

Lösung:

Um Datum und Uhrzeit korrekt zu analysieren, verwenden Sie Kleinbuchstabe „yyyy“ im Muster:

<code class="java">SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.ENGLISH);</code>
Nach dem Login kopieren

Mit dieser Korrektur analysiert der Code Datumsangaben ohne Probleme im erwarteten Format.

Zusätzliche Überlegungen:

Überprüfen Sie bei Verwendung von SimpleDateFormat sorgfältig die Musterbuchstaben, um sicherzustellen, dass sie dem gewünschten Format entsprechen. Eine vollständige Liste der Musterbuchstaben und der entsprechenden Datums-/Uhrzeitformate finden Sie in der Java-API-Dokumentation.

Datenbankaktualisierung:

Bezüglich des Problems, auf das die Zeit zurückgesetzt wird 00:00 Stellen Sie beim Aktualisieren eines Datums in einer Datenbank sicher, dass der Datentyp der Datenbankspalte und die Zeitkomponente des Java-Datumsobjekts kompatibel sind. Wenn die Datenbankspalte nur das Datum speichert, wird die Zeitkomponente im Java-Objekt beim Einfügen ignoriert.

Das obige ist der detaillierte Inhalt vonWarum analysiert SimpleDateFormat Datumsangaben falsch im Format „JJJJ-MM-TT HH:mm' und wie kann dieses Problem gelöst werden?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage