0

我收到一个日期字符串,就像"2018-06-21T13:30:00Z" 我用模式解析它一样"yyyy-MM-dd'T'HH:mm:ssZ"

我在 GMT+2,结果看起来像2018-06-21T15:30:00.000+02:00 我希望它看起来像这样2018-06-21T13:30:00.000+02:00

偏移量是否应该已经应用于HH:mm:ss结果部分?

代码

DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ssZ").parseDateTime("2018-06-21T13:30:00Z")

乔达:2.9.7

4

1 回答 1

1

是的,给出的日期时间是当地时间 +02:00。

来自ISO 8601 Wikipedia 与 UTC 的时间偏移

以下时间均指同一时刻:“18:30Z”、“22:30+04”、“1130−0700”和“15:00−03:30”。除 Z 外,不使用航海时区字母。要计算 UTC 时间,必须从本地时间中减去偏移量,例如“15:00−03:30”为 15:00 - (−03:30)获得 18:30 UTC。

因此,对于您的情况:2018-06-21T15:30:00.000+02:00表示 15:30 - 02:00,因此 UTC 为 13:30

于 2018-06-22T08:37:14.613 回答