如何在java中将时间戳转为时间
时间: 2023-02-06 15:18:29 浏览: 793
java--时间戳与时间转换工具
5星 · 资源好评率100%
在 Java 中,可以使用 `java.time` 包中的类来将时间戳转换为时间。
首先,使用 `Instant` 类将时间戳转换为 `Instant` 对象:
```
Instant instant = Instant.ofEpochMilli(timestamp);
```
其中,`timestamp` 是一个表示时间戳的毫秒数。
然后,使用 `Instant` 对象的 `atZone()` 方法将其转换为带时区的时间(`ZonedDateTime` 对象):
```
ZoneId zoneId = ZoneId.systemDefault();
ZonedDateTime zonedDateTime = instant.atZone(zoneId);
```
最后,你可以使用 `ZonedDateTime` 对象的各种方法来获取你想要的时间信息,例如年份、月份、日期、小时、分钟等。
例如,要获取当前时间的年份,可以使用如下代码:
```
int year = zonedDateTime.getYear();
```
你也可以使用 `java.text.DateFormat` 类来格式化时间,将其转换为你想要的格式。
例如,要将时间转换为类似 "2022-12-29 13:45:30" 这样的格式,可以使用如下代码:
```
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedDate = df.format(zonedDateTime);
```
请注意,上述代码使用了 Java 8 中引入的新的日期和时间 API。如果你使用的是旧版本的 Java,可以使用 `java.util.Date` 和 `java.text.SimpleDateFormat` 类来实现类似的功能。
阅读全文