Oracle-Datum bis zum Java-Datum

8

Was SimpleDateFormat für das Analysieren von Oracle-Datum verwenden?

Ich verwende dieses SimpleDateFormat.

  

SimpleDateFormat dateFormat = neu SimpleDateFormat ("yyyy / mm / tt hh: mm: ss.sss");

     

es gibt diese Ausnahme.

     

java.text.ParseException: Nicht übertragbares Datum: "2011-08-19 06: 11: 03.0"

Bitte sagen Sie mir das SimpleDateFormat zu verwenden. Danke.

    
HashimR 24.08.2011, 05:55
quelle

2 Antworten

13

Sie sollten dieses Muster "yyyy-MM-dd HH:mm:ss.S" anstelle von "yyyy/mm/dd hh:mm:ss.sss" verwenden.

wenig h für "Stunde in am / pm (1-12)" und H für "Stunde in Tag (0-23)"
siehe hier: SimpleDateFormat

%Vor%     
oliholz 24.08.2011, 06:00
quelle
0

tl; dr

%Vor%

Details

Ihre Eingabezeichenfolge stimmt nicht mit Ihrem Formatierungsmuster überein. Ihr Muster hat Schrägstriche, in denen Ihre Daten Bindestriche enthalten.

java.time

Außerdem verwenden Sie schreckliche alte Datum-Zeit-Klassen, die jetzt veraltet sind und durch die java.time Klassen.

Ihre Eingabezeichenfolge entspricht nahezu dem ISO 8601-Standard für Datums- und Uhrzeitformate. Ersetzen Sie den SPACE in der Mitte mit einem T .

%Vor%

Ihre Eingabe enthält keinen Indikator für die Zeitzone oder den Offset von UTC. Also analysieren wir als LocalDateTime , für ein Objekt, das keines hat Konzept der Zone / Offset.

%Vor%

Um eine Zeichenfolge im Standardformat zu generieren, rufen Sie toString .

auf %Vor%

Wenn diese Eingabe für eine bestimmte Zeitzone gedacht war, weisen Sie sie zu.

%Vor%

Über java.time

Die java.time Legacy Datum-Uhrzeit-Klassen wie java.util.Date , Calendar , & amp; SimpleDateFormat .

Das Joda-Time Projekt, jetzt in Wartungsmodus , rät Migration zum java.time Klassen.

Weitere Informationen finden Sie im Oracle-Lernprogramm . Und suchen Sie nach Stack Overflow für viele Beispiele und Erklärungen. Spezifikation ist JSR 310 .

Mit einem JDBC-Treiber , der JDBC 4.2 oder später können Sie java.time Objekte direkt mit Ihrer Datenbank austauschen. Keine Notwendigkeit für Strings oder java.sql. * Classes.

Wo erhalten Sie die Klassen java.time?

Das ThreeTen-Extra -Projekt erweitert java.time um zusätzliche Klassen. Dieses Projekt ist ein Testfeld für mögliche zukünftige Erweiterungen von java.time. Hier finden Sie einige nützliche Klassen wie Interval , < a href="http://www.threeten.org/threeten-extra/apidocs/org/threeten/extra/YearWeek.html"> YearWeek , YearQuarter und mehr .

    
Basil Bourque 14.01.2018 00:51
quelle

Tags und Links