java - 如何在Java中将“2020-08-07T16:07:13.337248Z”中的UTC日期字符串转换为“MM-dd-yyyy hh:mm”
问题描述
我有一个字符串,它是以 UTC "2020-08-07T16:07:13.337248Z" 表示的日期时间,我想在 Java 中将其转换为格式为 "MM-dd-yyyy hh:mm" 的 EST。谁能帮我 ?
解决方案
尝试这个。
- 使用DateTimeFormatter .ISO_DATE_TIME 格式转换为LocalDateTime 。
- 然后转换回所需的格式。
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
String timeStr = "2020-08-07T16:07:13.337248Z";
String format = "MM-dd-yyyy hh:mm a";
ZonedDateTime zdt = ZonedDateTime
.parse(timeStr,DateTimeFormatter.ISO_DATE_TIME.withZone(ZoneId.of("GMT-5")));
如果您想允许,Daylight Savings Time
请执行以下操作:
ZonedDateTime zdt = ZonedDateTime.parse(timeStr,
DateTimeFormatter.ISO_DATE_TIME.withZone(ZoneId.of("EST5EDT")));
System.out.println(ldt.format(DateTimeFormatter.ofPattern(format)));
印刷
08-07-2020 11:07 AM
我以ora
的格式添加了。如果你想在输出中看到,那么在.am
pm
EST
'EST'
a
推荐阅读
- java - 坑 >> 信息:小黄人:下午 3:10:40 坑 >> 信息:找到 0 个测试
- c# - 需要帮助了解状态机 (C#/Unity)
- r - 从数据框中的列的一部分获取平均值
- python - 网页抓取时无法摆脱不需要的输出
- r - 错误:addCircleMarkers 在闪亮的 r 中需要非 NULL 经度/纬度值?
- python - 如何使用 Outlook 将 Python 脚本的 for 循环输出发送到电子邮件
- scipy - Kolmogorov-Smirnov 检验统计量
- java - 在 for 语句中使用 Integer.MAX_VALUE 会阻止重复停止吗?
- c# - ASP.NET Core Identity UserManager 返回用户而不包含相关对象(延迟加载)
- reactjs - 有没有更优化的方法来填补保证金计算器上的缺失变量?