java - 当前系统时间与 GMT 时区的偏移(以毫秒为单位)

标签 java timezone gmt

我正在尝试修改现有的java代码以毫秒而不是秒输出数据。

现有代码返回 GMT 当前时间(以秒为单位):

currentTime = LocalDateTime.now().toEpochSecond(ZoneOffset.UTC);

输出当前时间= 1566311076

它说使用纪元转换器

GMT: Tuesday, August 20, 2019 2:24:36 PM
Your time zone: Tuesday, August 20, 2019 7:24:36 AM GMT-07:00 DST

我尝试修改java代码以返回以毫秒为单位的GMT当前时间,能够获取以毫秒为单位的当前系统时间,但是如何将结果偏移到GMT时间。

currentTime = ZonedDateTime.now().toInstant().toEpochMilli();

输出当前时间= 1566336256566

假设这个时间戳以毫秒为单位

GMT: Tuesday, August 20, 2019 9:24:16.566 PM
Your time zone: Tuesday, August 20, 2019 2:24:16.566 PM GMT-07:00 DST

你知道吗,我会非常感激的。谢谢!

最佳答案

首先转换为即时:

currentTime = LocalDateTime.now().toInstant(ZoneOffset.UTC).toEpochMilli()

演示

System.out.println(LocalDateTime.now().toEpochSecond(ZoneOffset.UTC));
System.out.println(LocalDateTime.now().toInstant(ZoneOffset.UTC).toEpochMilli());

输出

1566323773
1566323773363

关于java - 当前系统时间与 GMT 时区的偏移(以毫秒为单位),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57581894/

相关文章:

java - 如何在 Android 应用程序中用货币字符串替换符号?

java - 在本地主机上运行 Web 应用程序

javascript - 如何根据客户位置更改时区

php - 检查 DST 是否有效

php - 使用 PHP 和 MySQL 存储当前时间的推荐方法是什么?

java - 在java中保存和加载经过训练的斯坦福分类器

java - Java中使用comparable进行排序的链表

.net - 如何确定给定日期是否在 .NET 2.0 中给定时区的夏令时?

Java:SimpleDateFormat 未按所需时区进行格式化

java - 如何将毫秒转换为相应的日期?