gpt4 book ai didi

java - 将日期从 GMT 时区转换为本地时区——使用 ISO_OFFSET_DATE_TIME

转载 作者:行者123 更新时间:2023-12-02 10:42:34 25 4
gpt4 key购买 nike

我有一个日期,假定为 GMT,我想使用 ISO_OFFSET_DATE_TIME 格式将其转换为本地时区。

基本上,我想从:

2018-03-13 03:00:00.0

至:

2018-03-13T00:00:00-09:00

显然这会改变,具体取决于您本地的时区。

关于如何做到这一点有什么想法吗?

最佳答案

您可以利用 ZonedDateTime 来实现此目的。您只需读取 UTC 日期并根据需要进行转换即可。你可能会得到这样的结果:

String readPattern = "yyyy-MM-dd HH:mm:ss.S";
DateTimeFormatter readDateTimeFormatter = DateTimeFormatter.ofPattern(readPattern).withZone(ZoneOffset.UTC);
LocalDateTime utcLocalDateTime = LocalDateTime.parse("2018-03-13 03:00:00.0", readDateTimeFormatter);
ZonedDateTime localZonedDateTime = utcLocalDateTime.atOffset(ZoneOffset.UTC).atZoneSameInstant(ZoneId.systemDefault());
String writePattern = "yyyy-MM-dd HH:mm:ssXXX";
DateTimeFormatter writeDateTimeFormatter = DateTimeFormatter.ofPattern(writePattern);
System.out.println(writeDateTimeFormatter.format(localZonedDateTime));

有关详细信息,请参阅:

关于java - 将日期从 GMT 时区转换为本地时区——使用 ISO_OFFSET_DATE_TIME,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52825017/

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