java LocalDateTime 转 date
时间: 2024-05-21 22:09:03 浏览: 83
Java 8 中的 LocalDateTime 类可以用来表示不带时区的日期时间,而 Date 类则是表示特定时间点的类,它包含了从1970年1月1日00:00:00以来的毫秒数。要将 LocalDateTime 转换为 Date,可以使用 java.time 包中的 ZonedDateTime 类,它可以将 LocalDateTime 转换为具有时区的日期时间,然后再将其转换为 Date 类型。以下是示例代码:
```
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.util.Date;
public class LocalDateTimeToDateExample {
public static void main(String[] args) {
LocalDateTime localDateTime = LocalDateTime.now();
ZonedDateTime zonedDateTime = localDateTime.atZone(ZoneId.systemDefault());
Date date = Date.from(zonedDateTime.toInstant());
System.out.println("LocalDateTime: " + localDateTime);
System.out.println("Date: " + date);
}
}
```
在上述代码中,我们首先获取当前的 LocalDateTime 对象,然后使用 atZone() 方法将其转换为 ZonedDateTime 对象,使用 systemDefault() 方法获取当前系统默认时区。最后,使用 toInstant() 方法将 ZonedDateTime 对象转换为 Instant 对象,再使用 Date.from() 方法将 Instant 对象转换为 Date 类型。
阅读全文