首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从Java 8中的LocalDateTime中获取毫秒?

如何从Java 8中的LocalDateTime中获取毫秒?
EN

Stack Overflow用户
提问于 2018-02-24 00:59:31
回答 2查看 0关注 0票数 0

我想知道是否有一种方法可以从1-1-1970(历代)使用新的LocalDate,,,LocalTimeLocalDateTimeJava 8类。

已知的方式如下:

代码语言:txt
复制
long currentMilliseconds = new Date().getTime();

代码语言:txt
复制
long currentMilliseconds = System.currentTimeMillis();
EN

回答 2

Stack Overflow用户

发布于 2018-02-24 09:06:55

假设你有一个LocalDateTime就像这样:

代码语言:txt
复制
LocalDateTime ldt = LocalDateTime.of(2014, 5, 29, 18, 41, 16);

您需要应用时区信息,给出ZonedDateTime

代码语言:txt
复制
ZonedDateTime zdt = ldt.atZone(ZoneId.of("America/Los_Angeles"));

如果你能得到一个有效的ZonedDateTime,可以将其转换为自时代以来的毫秒数,如下所示:

代码语言:txt
复制
long millis = zdt.toInstant().toEpochMilli();
票数 0
EN

Stack Overflow用户

发布于 2018-02-24 10:30:04

我没有指定时区,

代码语言:txt
复制
System.out.println("ldt " + LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant().toEpochMilli());
System.out.println("ctm " + System.currentTimeMillis());

施予

代码语言:txt
复制
ldt 1424812121078 
ctm 1424812121281

如果不喜欢System.Current...,使用Instant.now().toEpochMilli()

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

https://stackoverflow.com/questions/-100004162

复制
相关文章

相似问题

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