Maison > Java > javaDidacticiel > Comment convertir java.util.Date en types java.time ?

Comment convertir java.util.Date en types java.time ?

Mary-Kate Olsen
Libérer: 2024-11-04 03:05:30
original
683 Les gens l'ont consulté

How do I convert java.util.Date to java.time types?

Conversion de java.util.Date en types java.time

Problème : Conversion entre java.util.Date ou les objets java.util.Calendar et les types de framework java.time peuvent prêter à confusion. Comprendre les types et leurs mappages est crucial.

Solution :

Java 8 a introduit le framework java.time, proposant plusieurs types pour manipuler la date et l'heure. Le type java.time approprié pour correspondre à une instance java.util.Date est déterminé par la précision et le fuseau horaire requis.

Types et conversions :

  • Instant : Représente un instant en UTC, similaire à java.util.Date. Utilisez Instant.ofEpochMilli(myUtilDate.getTime()) pour convertir.
  • OffsetDateTime : Une heure d'horloge murale avec un décalage par rapport à UTC. Appliquez un décalage à un Instant pour créer un OffsetDateTime. Utilisez OffsetDateTime.ofInstant(instant, ZoneOffset).
  • ZonedDateTime : Une heure d'horloge murale avec un fuseau horaire spécifique. Appliquez un ZoneId à un Instant pour créer un ZonedDateTime. Utilisez ZonedDateTime.ofInstant(instant, ZoneId).
  • LocalDate : Une date sans heure ni fuseau horaire. Obtenez un LocalDate en passant par un ZonedDateTime : ZonedDateTime.toLocalDate().
  • LocalTime : Une heure de la journée sans date ni fuseau horaire. De même, obtenez un LocalTime à partir d'un ZonedDateTime : ZonedDateTime.toLocalTime().
  • LocalDateTime : Une combinaison de date et d'heure sans fuseau horaire. Notez que cela peut être rarement utilisé, car il représente un moment non spécifique. Utilisez ZonedDateTime.toLocalDateTime().

Pièges de conversion :

  • Lors de la conversion de java.time en java.util , la précision peut être perdue (nanosecondes tronquées en millisecondes).
  • Lors de la conversion de java.util.Date en LocalDate ou LocalDateTime, un fuseau horaire est requis pour déterminer la date ou l'heure.

Conclusion :

Comprendre le mappage entre les types java.util.Date ou java.util.Calendar et java.time est essentiel pour une interopération transparente. Java.time offre une gestion date-heure robuste et précise, et la conversion entre l'ancien et le nouveau framework est prise en charge via des méthodes pratiques.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal