How to convert Joda LocalDate to java.util.Date?

前端 未结 5 691
佛祖请我去吃肉
佛祖请我去吃肉 2020-12-08 04:06

What is the simplest way to convert a JodaTime LocalDate to java.util.Date object?

5条回答
  •  没有蜡笔的小新
    2020-12-08 04:14

    JodaTime

    To convert JodaTime's org.joda.time.LocalDate to java.util.Date, do

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

    To convert JodaTime's org.joda.time.LocalDateTime to java.util.Date, do

    Date date = localDateTime.toDate();
    

    JavaTime

    To convert Java8's java.time.LocalDate to java.util.Date, do

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

    To convert Java8's java.time.LocalDateTime to java.util.Date, do

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

    You might be tempted to shorten it with LocalDateTime#toInstant(ZoneOffset), but there isn't a direct API to obtain the system default zone offset.

    To convert Java8's java.time.ZonedDateTime to java.util.Date, do

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

提交回复
热议问题