【发布时间】:2023-03-24 16:20:01
【问题描述】:
我的 DateFormat 应该是正确的(24 小时格式)
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
但是当我尝试解析 (sdf.parse(string)) 时,我遇到了最奇怪的“错误”
“2010-03-28 02:28:25”
我明白了:
2010 年 3 月 28 日星期日 03:28:25 CEST
出于某种奇怪的原因,它增加了一个小时。这也是唯一给我这种行为的日期,其他时间等都很好。代表小时的“02”总是很奇怪。
有什么想法吗?
【问题讨论】:
-
我强烈建议不要使用旧的
java.util.Calendar和java.util.Date类。您应该在java.time包中找到适当的类并使用它。 -
至于 bug,我的钱是在夏令时 v 冬令时。
-
不是,是因为你的时区
-
在那个时区的凌晨 2 点,发生了什么事? timeanddate.com/time/change/france?year=2010
-
@JBNizet 我相信我在这里寻找的词是“BINGO!”