首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用java将UTC毫秒转换为UTC日期

用java将UTC毫秒转换为UTC日期
EN

Stack Overflow用户
提问于 2016-01-29 06:35:48
回答 1查看 1.9K关注 0票数 0

我正在申请工作,在那里面临时区的问题。

要将UTC毫秒转换为UTC date对象。

我已经试过了

代码语言:javascript
复制
   TimeZone utcZone = TimeZone.getTimeZone("UTC");    
   Calendar date = getInstance(utcZone);  
   date.setTimeInMillis(utcMillisecond);  
   date.getTime();

date.getTime仍在返回我的本地时区,即EST。我知道我从UI获得的毫秒是在UTC毫秒。

EN

回答 1

Stack Overflow用户

发布于 2016-01-29 08:26:51

旧类java.util.Calendar无声地应用了JVM当前的默认时区。你以为它会出现在世界协调时,但事实并非如此。

java.time

您正在使用旧的麻烦的日期时间类,这些类已经被Java8及更高版本的java.time框架所取代。

我假设"UTC毫秒“是指1970年在UTC,1970-01-01T00:00:00Z中的第一个时刻以来的毫秒数。它可以直接用于创建一个java.time.Instant,这是UTC时间线上的一个时刻。

顺便说一句,请注意java.time有纳秒分辨率,比毫秒精细得多。

代码语言:javascript
复制
Instant instant = Instant.ofEpochMilli( yourMillisNumber );

调用toString以以符合ISO 8601标准的格式生成字符串作为日期-时间值的文本表示形式。例如:

2016-01-23T12:34:56.789Z

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35078300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档