java8 ZoneId 时区 作者:马育民 • 2022-06-30 21:06 • 阅读:10086 # 说明 `java.time.ZoneId` 是java8的新时区类,对应以前的 `TimeZone` 类 # 获取系统时区 ``` ZoneId zi = ZoneId.systemDefault(); System.out.println(zi); ``` # 获取我国时区 ### GMT+8 ``` ZoneId.of("GMT+8") ``` ``` ZoneId.of("GMT+08") ``` ``` ZoneId.of("GMT+08:00") ``` 用"8:00"会报错 ### UTC+8 ``` ZoneId.of("UTC+8") ``` ``` ZoneId.of("UTC+08") ``` ``` ZoneId.of("UTC+08:00") ``` ### +8 ``` ZoneId.of("+8") ``` ``` ZoneId.of("+08") ``` ``` ZoneId.of("+08:00") ``` ### 上海 ``` ZoneId.of("Asia/Shanghai") ``` # 根据时间戳生成对象 ``` long l = 1656595972911L; ZoneId zi = ZoneId.of("GMT+8"); LocalDateTime ldt = Instant.ofEpochMilli(l).atZone(zi).toLocalDateTime(); System.out.println(ldt); ``` #### 参考 https://blog.csdn.net/kfepiza/article/details/115433132 原文出处:http://malaoshi.top/show_1IX3apTtdXpr.html