unix时间戳格式转LocalDateTime
时间: 2023-11-09 10:50:37 浏览: 181
要将Unix时间戳格式转换为LocalDateTime,可以使用java.time包中的Instant和LocalDateTime类。首先,使用Instant类的ofEpochSecond方法将Unix时间戳转换为Instant对象。然后,使用LocalDateTime类的ofInstant方法将Instant对象转换为对应的LocalDateTime对象。下面是示例代码:
```java
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
// 将Unix时间戳转换为LocalDateTime
long unixTimestamp = 1598918400; // Unix时间戳,以秒为单位
Instant instant = Instant.ofEpochSecond(unixTimestamp);
LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, ZoneId.systemDefault());
// 输出转换后的LocalDateTime
System.out.println(localDateTime);
```
相关问题
JAVA8 将UTC时区 unix时间戳转为UTC LocalDateTime的时间
### 将Unix时间戳转换为Java 8中UTC时区的LocalDateTime
在Java 8及其后续版本中,`java.time`包提供了强大的API来处理日期和时间。为了将Unix时间戳(自1970年1月1日以来经过的秒数)转换为UTC时区内的`LocalDateTime`对象,可以利用`Instant.ofEpochSecond()`方法创建一个表示给定时刻的对象,再通过指定的目标时区调整此瞬间到所需的区域时间。
对于具体实现而言:
- `Instant.ofEpochSecond(long epochSecond)`用于获取对应于给定秒数的一个瞬时点。
- 接着使用`.atZone(ZoneId.of("UTC"))`把该瞬时映射至协调世界时(即UTC),形成带有时区信息的时间点。
- 最终调用`.toLocalDateTime()`去除任何有关时区的信息,得到纯粹的日历日期与钟表时间组合——也就是所求的`LocalDateTime`实例[^2]。
下面是完整的代码示例展示这一过程:
```java
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
public class UnixToUtc {
public static LocalDateTime convertUnixTimestampToLocalDateTime(Long unixTimestamp){
Instant instant = Instant.ofEpochSecond(unixTimestamp);
return LocalDateTime.ofInstant(instant, ZoneId.of("UTC"));
}
}
```
java Unix时间戳字符串转LocalDateTime
你可以使用`java.time.LocalDateTime`和`java.time.Instant`来将Unix时间戳字符串转换为`LocalDateTime`。以下是一个示例代码:
```javaimport java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
public class Main {
public static void main(String[] args) {
String unixTimestampString = "1629456000"; // Unix时间戳字符串 // 将Unix时间戳字符串转换为Instant对象 Instant instant = Instant.ofEpochSecond(Long.parseLong(unixTimestampString));
// 将Instant对象转换为LocalDateTime对象 LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, ZoneId.systemDefault());
// 格式化输出 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String formattedDateTime = localDateTime.format(formatter);
System.out.println(formattedDateTime);
}
}
```
这个示例代码将Unix时间戳字符串"1629456000"转换为本地的`LocalDateTime`对象,并将其格式化为"yyyy-MM-dd HH:mm:ss"的字符串输出。你可以根据需要修改格式化的模式。
阅读全文
相关推荐













