Подтвердить что ты не робот

Как преобразовать Joda LocalDate в java.util.Date?

Каков самый простой способ конвертировать JodaTime LocalDate в java.util.Date объект?

4b9b3361

Ответ 1

JodaTime

Чтобы преобразовать JodaTime org.joda.time.LocalDate в java.util.Date, сделайте

Date date = localDate.toDateTimeAtStartOfDay().toDate();

Чтобы преобразовать JodaTime org.joda.time.LocalDateTime в java.util.Date, сделайте

Date date = localDateTime.toDate();

JavaTime

Чтобы преобразовать Java8 java.time.LocalDate в java.util.Date, сделайте

Date date = Date.from(localDate.atStartOfDay().atZone(ZoneId.systemDefault()).toInstant());

Чтобы преобразовать Java8 java.time.LocalDateTime в java.util.Date, сделайте

Date date = Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant());

У вас может возникнуть соблазн сократить его с помощью LocalDateTime#toInstant(ZoneOffset), но нет прямого API для получения системного смещения зоны по умолчанию.

Чтобы преобразовать Java8 java.time.ZonedDateTime в java.util.Date, сделайте

Date date = Date.from(zonedDateTime.toInstant());

Ответ 2

Вам понадобится часовой пояс.

LocalDate date = ...

Date utilDate = date.toDateTimeAtStartOfDay( timeZone ).toDate( );

Ответ 3

Так как версия 2.0 LocalDate имеет метод toDate()

Date date = localDate.toDate();

При использовании версии 1.5 - 2.0 используйте:

Date date = localDate.toDateTimeAtStartOfDay().toDate();

В старых версиях вы остаетесь:

Date date = localDate.toDateMidnight().toDate();

Ответ 4

Может быть, это?

localDate.toDateTimeAtCurrentTime().toDate();

Ответ 5

Попробуйте это.

новая дата (localDate.toEpochDay())