Avec l'introduction par Java 8 du package java.time, les développeurs ont adopté sa nouvelle API pour la gestion date et heure. Parmi ses classes, LocalDateTime contient une valeur de date avec heure indépendante du fuseau horaire.
Cependant, le code existant s'appuie souvent sur la classe java.util.Date. Lors de l'intégration d'anciennes et de nouvelles bases de code, la conversion entre ces deux classes devient nécessaire.
Approche de conversion :
De java.util.Date à LocalDateTime :
Code :
Date in = new Date(); LocalDateTime ldt = LocalDateTime.ofInstant(in.toInstant(), ZoneId.systemDefault());
De LocalDateTime à java.util.Date :
Code :
LocalDateTime ldt = ... ZonedDateTime zdt = ldt.atZone(ZoneId.systemDefault()); Date output = Date.from(zdt.toInstant());
Remarque sur l'heure d'été (DST) :
Conversion de LocalDateTime en java.util .Date via ZonedDateTime peut introduire un comportement inattendu en raison de l'heure d'été. Certaines valeurs LocalDateTime peuvent ne pas exister ou apparaître deux fois lors des transitions DST. Reportez-vous au Javadoc pour atZone(ZoneId) pour plus de détails.
Considérations supplémentaires :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!