我想将java.time.LocalDate转换为java.util.Date类型。因为我想将日期设置为JDateChooser。或者有任何日期选择器支持java。时间日期吗?


当前回答

localDate.format(DateTimeFormatter.ofPattern("dd/MM/yyyy"));

其他回答

简单的

public Date convertFrom(LocalDate date) {
    return java.sql.Timestamp.valueOf(date.atStartOfDay());
}

芬兰湾的科特林解决方案:

1)将这个扩展函数粘贴到某个地方。

fun LocalDate.toDate(): Date = Date.from(this.atStartOfDay(ZoneId.systemDefault()).toInstant())

2)好好利用它,别再这样了。

val myDate = myLocalDate.toDate()
Date date = Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).toInstant());

这假设日期选择器使用系统默认时区将日期转换为字符串。

为了从java.time创建java.util.Date。LocalDate,你必须

向LocalDate添加时间 在一个时区内解释日期和时间 获取自epoch以来的秒数/毫秒数 创建一个java.util.Date

代码可能如下所示:

LocalDate localDate = LocalDate.now();
Date date = new Date(localDate.atStartOfDay(ZoneId.of("America/New_York")).toEpochSecond() * 1000);

试试这个:

public Date convertFrom(LocalDate date) {
    return Date.valueOf(date);
}