gpt4 book ai didi

java - 如果时区设置为 "XXX",SimpleDateFormat 将忽略 "UTC"

转载 作者:搜寻专家 更新时间:2023-10-31 08:25:36 26 4
gpt4 key购买 nike

我正在尝试以下列格式将当前日期时间输出为 UTC:2016-01-11T14:08:42+00:00

final SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXXX");
formatter.setTimeZone(TimeZone.getTimeZone("UTC"));

final String dateString = formatter.format(new Date());

“dateString”现在应该包含“2016-01-11T14:08:42+00:00”,但它包含“2016-01-11T14:08:42Z”。

没有“UTC”时区设置,我得到了正确的格式,但是 - 当然 - 在我的特定时区......

有什么想法吗?

最佳答案

请参阅 SimpleDateFormat 的文档:

For formatting [using an ISO 8601 Time zone], if the offset value from GMT is 0, "Z" is produced.

因此,这种行为是意料之中的。

您可以:

  • 使用 RFC 822 时区格式化程序 ZZZ;然而,这会产生“+0000”
  • 处理字符串以替换最后的 Z:str.replaceAll("Z$", "+00:00")

关于java - 如果时区设置为 "XXX",SimpleDateFormat 将忽略 "UTC",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34723683/

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