Timestamp 转成LocalDateTime
时间: 2023-07-12 18:05:51 浏览: 91
可以使用 Java 8 中的 `Instant` 类和 `ZoneId` 类来将 `Timestamp` 转换为 `LocalDateTime`。
示例代码如下:
```java
import java.sql.Timestamp;
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
public class TimestampToLocalDateTimeExample {
public static void main(String[] args) {
Timestamp timestamp = new Timestamp(System.currentTimeMillis());
Instant instant = timestamp.toInstant();
LocalDateTime localDateTime = instant.atZone(ZoneId.systemDefault()).toLocalDateTime();
System.out.println("Timestamp: " + timestamp);
System.out.println("LocalDateTime: " + localDateTime);
}
}
```
输出结果类似于:
```
Timestamp: 2021-11-01 14:30:00.0
LocalDateTime: 2021-11-01T14:30:00
```
这里使用了 `System.currentTimeMillis()` 来获取当前时间的 `Timestamp`。如果有一个具体的 `Timestamp` 值,可以直接传入即可。
另外,`ZoneId.systemDefault()` 表示使用系统默认时区。如果需要指定特定的时区,可以使用 `ZoneId.of("时区ID")` 来创建对应的 `ZoneId` 对象。
阅读全文