gpt4 book ai didi

java - 如何在 Java 中解析 UTC 日期/时间

转载 作者:行者123 更新时间:2023-12-05 09:01:34 24 4
gpt4 key购买 nike

给定以下格式的日期/时间字符串:2021-12-05 21:10:00 UTC,如何将其解析为 Java DateTime 对象?它似乎需要一个格式化程序字符串,例如 uuuu-MM-dd HH:mm:ss,但是我如何处理“UTC”以及如何确保 Java 对象指定 UTC?

最佳答案

您缺少的是时区说明符,例如。 z.

// first
private static final DateTimeFormatter DATETIME_PARSER
= DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ss z");

//then
String dateString = "2021-12-05 21:10:00 UTC";
ZonedDateTime dateTime = ZonedDateTime.parse(dateString, DATETIME_PARSER);

这会正确生成您需要的日期时间对象。

也就是说,不清楚您是否需要 z(时区名称)、VV(时区 ID)或 v (通用时区名称),因为它们的含义略有不同,并且都适用于“UTC”。查看documentation for the supported formatting .


编辑:

The data comes from an environmental sensor whose location is known, and the only thing that matters is that the date/time value is UTC.

在那种情况下没关系,只需使用z即可。

正如评论者正确建议的那样,您可能想使用 Instant而不是 ZonedDateTime如果您只关心时间轴上的点而不关心事件起源的时区:

Instant instant = Instant.from(DATETIME_PARSER.parse(dateString));

关于java - 如何在 Java 中解析 UTC 日期/时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73073660/

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