gpt4 book ai didi

java - ISO8601 日期解析忽略偏移量

转载 作者:行者123 更新时间:2023-12-01 19:38:17 25 4
gpt4 key购买 nike

我正在尝试使用 yyyy-MM-dd'T'HH:mm:ssXXXXX< 将 2009-07-30T16:10:36+06:00 解析为日期.

但是,我得到的输出似乎没有考虑偏移量,因为我得到 yyyy-MM-dd'T'HH:mm:ssXXXXX

我缺少什么想法吗?

final DateTimeFormatter iso8601Formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ssXXXXX");
final ZonedDateTime zonedDateTime = ZonedDateTime.parse("2009-07-30T16:10:36+06:00", iso8601Formatter);
final String formatted = zonedDateTime.format(DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm:ss"));
System.out.println(formatted);

最佳答案

如果我的理解是正确的,您应该设置类似于 withZoneSameInstant(ZoneId.of("UTC"))

zone
final ZonedDateTime zonedDateTime = ZonedDateTime.parse("2009-07-30T16:10:36+06:00", DateTimeFormatter.ISO_OFFSET_DATE_TIME);

System.out.println("Without ZoneId: " + zonedDateTime.format(DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm:ss")));
System.out.println("With ZoneId: " + zonedDateTime.withZoneSameInstant(ZoneOffset.UTC).format(DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm:ss")));

结果

Without ZoneId: 30/07/2009 16:10:36
With ZoneId: 30/07/2009 10:10:36

关于java - ISO8601 日期解析忽略偏移量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56597300/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com