Heim > Java > javaLernprogramm > Wie konvertiere ich zwischen java.time.LocalDateTime und java.util.Date?

Wie konvertiere ich zwischen java.time.LocalDateTime und java.util.Date?

Mary-Kate Olsen
Freigeben: 2024-12-06 22:12:14
Original
183 Leute haben es durchsucht

How do I convert between java.time.LocalDateTime and java.util.Date?

Konvertieren zwischen java.time.LocalDateTime und java.util.Date

Java 8 führte eine neue Datums- und Uhrzeit-API ein, einschließlich der Java .time.LocalDateTime-Klasse für zeitzonenunabhängige Datums-mit-Uhrzeit-Werte. Viele ältere Codebasen verwenden jedoch immer noch die ältere Klasse java.util.Date. Dies wirft die Frage auf, wie zwischen den beiden Klassen konvertiert werden soll.

Obwohl es keine direkten Konvertierungsmethoden gibt, bieten die folgenden Schritte eine Lösung:

  1. Konvertieren java.util.Date to Instant:

    Date in = new Date();
    Instant instant = in.toInstant();
    Nach dem Login kopieren
  2. Konvertieren Sofort zu LocalDateTime (Zeitzone angeben):

    LocalDateTime ldt = LocalDateTime.ofInstant(instant, ZoneId.systemDefault());
    Nach dem Login kopieren
  3. LocalDateTime in ZonedDateTime konvertieren (Zeitzone angeben):

    ZoneId systemZoneId = ZoneId.systemDefault();
    ZonedDateTime zdt = ldt.atZone(systemZoneId);
    Nach dem Login kopieren
  4. Konvertieren Sie ZonedDateTime in Instant:

    Instant convertedInstant = zdt.toInstant();
    Nach dem Login kopieren
  5. Instant zurück in java.util konvertieren.Datum:

    Date out = Date.from(convertedInstant);
    Nach dem Login kopieren

Es ist wichtig zu beachten, dass die Konvertierung zu LocalDateTime und zurück zu java.util.Date aufgrund der Sommerzeit zu einem anderen Zeitpunkt führen kann Zeit.

Darüber hinaus verwendet java.util.Date einen anderen Kalender für Daten vor dem 15. Oktober 1582, während java.time.* den ISO-Kalender für alle Zeiten verwendet. Dieser Unterschied kann die Kompatibilität beeinträchtigen, wenn Daten vor 1582 verglichen werden.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich zwischen java.time.LocalDateTime und java.util.Date?. 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