【发布时间】:2020-01-13 13:30:11
【问题描述】:
我有这行代码:
// I pass milliseconds timestamp on time var
ZonedDateTime zonedDatetIme = ZonedDateTime.ofInstant(java.time.Instant.ofEpochMilli(time), java.time.ZoneId.of("Asia/Almaty"))
当我这次尝试输出时,它会返回:
System.our.println(zonedDatetIme)
// returns
2020-01-24T17:00+06:00[Asia/Almaty]
然后我尝试格式化这个日期时间:
DateTimeFormatter formatter = DateTimeFormatter.ofPattern('dd.MM.yyyy hh:mm');
System.our.println(formatter.format(zonedDateTime));
返回给我的是:
24.01.2020 05:00
这是错误的。就像它减去我的时区的 6 小时而不是添加它。为什么会这样?
【问题讨论】:
-
17-5=12 您是如何得到“这就像它减去了我的时区的 6 小时而不是添加它一样”?
标签: java datetime datetime-format