如何将Joda LocalDate转换为java.util.Date



将JodaTime LocalDate转换为java.util.Date对象的最简单方法是什么?

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.0版本开始LocalDate有了toDate()方法

Date date = localDate.toDate();

如果使用1.5 - 2.0版本,请使用:

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

在旧版本中,您将留下:

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

您需要一个时区。

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

也许是这个?

localDate.toDateTimeAtCurrentTime().toDate();

试试这个

新日期(localDate.toEpochDay ())

相关内容

最新更新