Java 错误:MSK 中的时间不正确
Posted
技术标签:
【中文标题】Java 错误:MSK 中的时间不正确【英文标题】:Java bug: incorrect time in MSK 【发布时间】:2015-08-03 07:57:08 【问题描述】:我发现 Java 在 MSK 时区给出了错误的时间,忽略了操作系统数据:
如您所见,Java 时间提前了一个小时。
代码如下:
package tests;
import java.util.Date;
public class Try_CurrentTime
public static void main(String[] args)
System.out.println(new Date());
java版本是1.8.0_25
我们没有夏令时。
可以解决吗?
更新
它认为我们没有夏令时,因为TimeZone.getDefault().inDaylightTime( new Date() )
返回false
。
【问题讨论】:
【参考方案1】:请参阅Timezone Data Versions in the JRE Software 图表。您所指的更改是在 tzdata 2014f 中进行的 - 这是在 TZUpdater 1.4.6 或 JRE 1.8 更新 31 中首次引入的。您说您正在运行 1.8 更新 25。
只需将您的 Java 运行时更新到当前版本。
【讨论】:
以上是关于Java 错误:MSK 中的时间不正确的主要内容,如果未能解决你的问题,请参考以下文章
java.util.zip.DataFormatException:数据检查不正确
数组中的“System.FormatException:'输入字符串格式不正确”错误