gpt4 book ai didi

java - 如何将 UTC 偏移日期格式字符串解析为由 | 分隔的结果日期象征

转载 作者:太空宇宙 更新时间:2023-11-03 11:41:36 25 4
gpt4 key购买 nike

我有一个非常特殊的问题,我正在尝试解析 "2019-12-25T17:00:00-05:00"这样它应该给我结果 DEC 12 |星期四 |下午 5:00

我使用 DateTimeFormatterLocalDate 尝试了以下代码

DateTimeFormatter inputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ssz", Locale.US);
DateTimeFormatter outputFormatter = DateTimeFormatter.ofPattern("MM d | E | hh:mm a", Locale.US);
LocalDate date = LocalDate.parse("2019-12-25T17:00:00-05:00", inputFormatter);
String formattedDate = outputFormatter.format(date);
contentTextView.setText(formattedDate);

但它因 DateTimeParseException: Text '2019-12-25T17:00:00-05:00' could not be parsed at index 19

崩溃

知道它崩溃的原因以及我的输出是否会呈现预期的结果吗?谢谢!

最佳答案

您的字符串 2019-12-25T17:00:00-05:00 代表 UTC 时区偏移量 UTC offset , 所以使用 OffsetDateTime 来解析那个字符串

OffsetDateTime odt = OffsetDateTime.parse("2019-12-25T17:00:00-05:00");

System.out.println(odt.format(DateTimeFormatter.ofPattern("MMM d | E | hh:mm a", Locale.US)));

如果你想设置特定的时区,你可以使用 atZoneSameInstant 来传递 ZoneId for eaxmple

ZoneId zone = ZoneId.of("America/Chicago");
ZonedDateTime zdt = odt.atZoneSameInstant(zone);

关于java - 如何将 UTC 偏移日期格式字符串解析为由 | 分隔的结果日期象征,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57174218/

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