Est-il possible de faire ça? Si oui, comment puis-je convertir les données de Joda-Time à Date et inversement?
Pour convertir Java Date
en Joda DateTime
: -
Date date = new Date();
DateTime dateTime = new DateTime(date);
Et vice versa:-
Date dateNew = dateTime.toDate();
Avec TimeZone
, si nécessaire: -
DateTime dateTimeNew = new DateTime(date.getTime(), timeZone);
Date dateTimeZone = dateTime.toDateTimeAtStartOfDay(timeZone).toDate();
Vous n'avez pas spécifié le type dans Joda Time qui vous intéresse, mais:
Instant instant = ...;
Date date = instant.toDate();
instant = new Instant(date);
// Or...
instant = new Instant(date.getTime());
Ni Date
ni Instant
ne sont liés à des fuseaux horaires, il est donc inutile de les spécifier ici.
Il n’a aucun sens de convertir LocalDateTime
/LocalDate
/LocalTime
en Date
(ou inversement), car cela dépend du fuseau horaire appliqué.
Avec DateTime
vous pouvez convertir en un Date
sans spécifier le fuseau horaire, mais convertir à partir de Date
à DateTime
vous devez spécifier le fuseau horaire, sinon le fuseau horaire par défaut du système sera utilisé. (Si vous voulez vraiment cela, je le spécifierais explicitement pour préciser qu'il s'agit d'un choix délibéré.)
Par exemple:
DateTimeZone zone = DateTimeZone.forID("Europe/London");
Date date = ...;
DateTime dateTime = new DateTime(date.getTime(), zone);
Pour convertir de Java Date en heure Joda):
La conversion du fuseau horaire Date à DateTime devait être spécifiée.
Pour convertir une date Java.util en heure Joda, il vous suffit de transmettre la date et le fuseau horaire Java.util au constructeur de l'heure Joda.
Java.util.Date date = new Java.util.Date(System.currentTimeMillis());
DateTimeZone dtz = DateTimeZone.getDefault();// Gets the default time zone.
DateTime dateTime = new DateTime(date.getTime(), dtz);
Pour convertir l'heure de Joda en Java Date:
Pour le cas inverse, Joda DateTime a une méthode toDate()
qui renverra la date Java.util.
DateTime jodaDate = new DateTime();
Java.util.Date date = jodaDate.toDate();
Pour plus de détails visitez ici