Java 获取格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数
时间: 2024-11-03 21:22:55 浏览: 39
在Java中,你可以使用`java.time.Instant`类来获取自1970年UTC(即格林尼治标准时间,Greenwich Mean Time,也称协调世界时)1月1日零点以来的总秒数。以下是一个示例,计算从那时起到现在的总秒数:
```java
import java.time.Instant;
import java.time.ZoneId;
import java.time.ZonedDateTime;
public class Main {
public static void main(String[] args) {
// 获取1970年1月1日UTC的时间
Instant epochStart = Instant.ofEpochSecond(0L);
// 将UTC时间转换为中国北京的本地时间
ZoneId chinaBeijingZone = ZoneId.of("Asia/Shanghai");
ZonedDateTime chinaBeijingTime = epochStart.atZone(chinaBeijingZone);
// 转换为日期时间并获取毫秒,然后除以1000得到秒数
long localSeconds = chinaBeijingTime.toInstant().toEpochMilli() / 1000;
// 如果需要当前的总秒数,可以用当前时间替换上面的"chinaBeijingTime"
// 可以用LocalDateTime.now(chinaBeijingZone).toInstant().getEpochSecond()获取当前时间的秒数
System.out.println("从1970年01月01日00时00分00秒到现在的总秒数: " + localSeconds);
}
}
```
这个程序首先获取了1970年UTC的瞬间,然后将其转换为中国北京的时间,并计算出总秒数。请注意,你需要根据实际需求更新`ZonedDateTime`的部分以获取当前时间。
阅读全文