首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Instant to String java.time

Instant to String java.time
EN

Stack Overflow用户
提问于 2017-09-19 10:29:55
回答 3查看 1.7K关注 0票数 1

有没有一种使用java.time实现System.currentTimeMillis()2017-04-13T19:00:00+08:00的简单方法

到目前为止,我已经尝试了大量的方法,但它们要么以错误的语言给出了正确的区域,要么根本没有给出任何区域。

代码语言:javascript
复制
Instant shanghai= Instant.ofEpochMilli(System.currentTimeMillis());
DateTimeFormatter formatter = DateTimeFormatter.ofLocalizedDateTime(FormatStyle.FULL)
    .withZone(ZoneId.of("Asia/Shanghai"));
System.out.println(formatter.format(shanghai));

顺便说一句,也许是因为我使用Java 8 time API的次数还不够多,看不到它的美妙之处,但我确实觉得它是“用脚画蛇”。

例如,withZone听起来像是改变了时间结果以适应区域。但它实际上也改变了语言,我认为这应该只与Locale有关。

EN

回答 3

Stack Overflow用户

发布于 2017-09-19 13:08:18

我将建议绕过System.currentTimeMillis(),直接跳到java.time的领域

代码语言:javascript
复制
System.out.println(OffsetDateTime.now());

对于我的照片:2017-09-19T06:07:12.814+01:00

票数 3
EN

Stack Overflow用户

发布于 2017-09-19 16:18:39

System.currentTimeMillis()等方法返回的long,表示自纪元描述时间线上的Instant (瞬时点)以来的毫秒数,并可使用Instant.ofEpochMilli(…)转换为对象表示

代码语言:javascript
复制
long l = System.currentTimeMillis();
System.out.println(Instant.ofEpochMilli(l));
代码语言:javascript
复制
2017-09-19T08:17:37.054Z

要将其转换为带偏移量的datetime,可以使用OffsetDateTime.ofInstant(…)

代码语言:javascript
复制
System.out.println(
    OffsetDateTime.ofInstant(Instant.ofEpochMilli(l), ZoneId.of("Asia/Shanghai")));
代码语言:javascript
复制
2017-09-19T16:17:37.054+08:00

请注意,这里不需要格式化程序。

票数 3
EN

Stack Overflow用户

发布于 2017-09-19 11:29:41

我终于得到了ISO8601的时间!

代码语言:javascript
复制
Instant shanghai = Instant.ofEpochMilli(System.currentTimeMillis());
OffsetDateTime o = OffsetDateTime.ofInstant(shanghai,ZoneId.systemDefault());
DateTimeFormatter dtf = DateTimeFormatter.ISO_OFFSET_DATE_TIME;
System.out.println(dtf.format(o));

DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(Instant.now())抱怨偏移量有问题之后,在DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(...)抱怨年份之后...

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

https://stackoverflow.com/questions/46290899

复制
相关文章

相似问题

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