java - 从 LocalDateTime Java 8 获取 UTC java.uti.Date
问题描述
我需要将 LocalDateTime 转换为 UTC 日期,这是我的代码
LocalDateTime ldt = LocalDateTime.now();
System.out.println("Local date Time " +ldt);
ZonedDateTime ldtZoned = ldt.atZone(ZoneId.systemDefault());
ZonedDateTime utcZoned = ldtZoned.withZoneSameInstant(ZoneOffset.UTC);
System.out.println("UTC Zone"+utcZoned);
Instant i = utcZoned.toInstant();
System.out.println("Instant "+i);
Date out = Date.from(i);
System.out.println("date from Instant "+ out);
输出为
Local date Time 2019-05-08T16:23:53.109
UTC Zone2019-05-08T22:23:53.109Z
Instant 2019-05-08T22:23:53.109Z
date from Instant Wed May 08 16:23:53 MDT 2019
直到第三条陈述一切都很好。但是当我们从 Instant 获取 Date 对象时,它会将 Date 对象转换回本地时间。
我们如何从 LocaldateTime 获取 Date 对象作为 UTC?
解决方案
推荐阅读
- python - AttributeError: _Connection__connection 使用 sqlalchemy 提交会话时
- bash - “期望”命令行脚本连接到 VPN 并输入密码
- node.js - api design - 如何设计公共 POST api 以防止垃圾邮件请求
- php - 如何在控制器 Laravel 7 中更改数据库中的日期格式
- matplotlib - 在 matplotlib 中绘制 2 个字典
- hash - 当 Sha256 和 md5 加在一起时
- c - '(struct student *)&st' 是一个指针;你的意思是使用'->'吗?|
- python - 在 3 个不同的集合中获得所有可能的组合
- c# - 如何知道一个 GameObject 在 Unity 中是否有网格?
- c++ - Toolbar / CreateToolbarEx 问题 C++ 不显示所有位图