为了账号安全,请及时绑定邮箱和手机立即绑定

将 millis 转换为 ZonedDateTime 不起作用

将 millis 转换为 ZonedDateTime 不起作用

手掌心 2023-09-20 15:32:54
我有这个毫秒:1570046362841使用版本 1进行转换时:var myDate = ZonedDateTime.ofInstant(Instant.ofEpochSecond(1570046362841), ZoneId.of("America/New_York"));我会得到这个结果(这是错误的!):+51722-10-16T03:58:54-04:00[America/New_York]但是,当使用版本 2进行转换时: final String dateFormat = "yyyy-MM-dd HH:mm:ss SSS"; SimpleDateFormat formatter = new SimpleDateFormat(dateFormat); formatter.setTimeZone(TimeZone.getTimeZone("America/New_York")); var dateObj = new Date(1570046362841); var myDate = formatter.format(dateObj);我得到正确的结果:2019-10-02 15:59:59 934为什么版本1是错误的?版本 1 有什么问题?
查看完整描述

1 回答

?
largeQ

TA贡献2039条经验 获得超7个赞

而不是Instant.ofEpochSecond()你需要使用,Instant.ofEpochMilli()因为你有毫秒。



查看完整回答
反对 回复 2023-09-20
  • 1 回答
  • 0 关注
  • 68 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信