Heim Java javaLernprogramm Warum wirft SimpleDateFormat ein „nicht analysierbares Datum' aus?

Warum wirft SimpleDateFormat ein „nicht analysierbares Datum' aus?

Jan 01, 2025 am 02:22 AM

Why Does SimpleDateFormat Throw

Nicht analysierbare Daten mit SimpleDateFormat: Geben Sie das Gebietsschema an oder verwenden Sie DateTimeFormatter

Problem:
Bei Verwendung von SimpleDateFormat Beim Analysieren von Daten kann der Fehler auftreten „java.text.ParseException: Unparseable date“, insbesondere wenn das Gebietsschema nicht angegeben ist.

Erklärung:
SimpleDateFormat erfordert ein Gebietsschema, um Datumsangaben korrekt zu analysieren. Wenn keine angegeben ist, wird das Standardgebietsschema des Systems verwendet, das möglicherweise nicht mit dem analysierten Format übereinstimmt.

Lösung:

  1. Geben Sie immer das an locale: Verwenden Sie die Konstruktorüberladung von SimpleDateFormat, die ein Locale-Argument akzeptiert. Zum Beispiel:
SimpleDateFormat dtfmt = new SimpleDateFormat("dd MMM yyyy hh:mm a", Locale.ENGLISH);
Nach dem Login kopieren
  1. Verwenden Sie die moderne DateTimeFormatter-API:
  • DateTimeFormatter ist die bevorzugte API zum Formatieren und Analysieren von Datums- und Uhrzeitangaben.
  • Es bietet mehr Flexibilität und Kontrolle über die Formatierung, einschließlich der Möglichkeit zur Angabe ein Gebietsschema.

Demo mit DateTimeFormatter:

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Locale;

public class Main {
    public static void main(String[] args) {
        String strDateTime = "24 Oct 2016 7:31 pm";
        DateTimeFormatter dtf = DateTimeFormatter.ofPattern("d MMM uuuu h:m a").withLocale(Locale.ENGLISH);
        LocalDateTime ldt = LocalDateTime.parse(strDateTime, dtf);
        System.out.println(ldt); // prints 2016-10-24T19:31
    }
}
Nach dem Login kopieren

Hinweis:

  • Das Standardgebietsschema, das von DateTimeFormatter angegeben wird, verwendet das aktuelle System Gebietsschema.
  • Geben Sie immer das Gebietsschema explizit an, um potenzielle Analyseprobleme zu vermeiden.

Das obige ist der detaillierte Inhalt vonWarum wirft SimpleDateFormat ein „nicht analysierbares Datum' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)