【发布时间】:2020-12-28 08:50:34
【问题描述】:
我收到一个格式如下的字符串 "yyyy-MM-dd'T'HH:mm:ssZ" 例如:2020-09-09T09:58:00+0000" 偏移量是 UTC。
我需要将字符串转换为 Date 对象而不应用偏移量“+0000”,但是在运行我的代码时我不断得到不同的时间:
DateTimeFormatter isoFormat = ISODateTimeFormat.dateTimeParser();
Date date = isoFormat.parseDateTime("2020-09-09T09:58:00+0000").toDate();
// Wed Sep 09 05:58:00 EDT 2020
如上所示,日期已更改。
相反,我想保持相同的日期和时间,例如:Wed Sep 09 09:58:00,因此我可以将此 Date 对象转换为带有“yyyy-MM-dd”、“HH:mm:”的字符串: ss”和“yyyy-MM-dd'T'HH:mm:ss”格式。
【问题讨论】:
-
你的问题没有意义,对不起。如果不应用偏移量或时区,就无法将您的字符串转换为
Date。你想应用一个*不同的*偏移量吗?? -
日期已更改 (1) 在
Date中,您得到的日期和时间没有更改。 (2) 当你打印Date时,你隐式调用了它的toString方法。该方法将日期和时间更改为 JVM 的默认时区。Date本身仍然没有改变。是的,我同意,这令人困惑。
标签: java date jodatime iso8601