gpt4 book ai didi

Java SimpleDateFormat与19700101转换问题

转载 作者:行者123 更新时间:2023-12-01 07:14:21 25 4
gpt4 key购买 nike

我在java中的日期转换方面遇到了一些问题。当我将 19700101 放入 SimpleDateFormat 然后调用 getTime 时,我得到 -3600000。我写测试:

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
Date date = dateFormat.parse("19700101");
System.out.println(date.getTime());
System.out.println(dateFormat.format(new Date(0)));
System.out.println((new Date(0)).getTime());

结果应该是:

0
19700101
0

但是我得到了

-3600000
19700101
0

我的问题是为什么 SimpleDateFormat 返回 -3600000 (20Nov1969)?在哪里可以找到有关格式和转换错误的信息?

最佳答案

您使用的是哪个时区?我猜你用的是 GMT+1。将时区设置为“GMT”,您应该会得到预期的结果。

您正在使用默认时区,如 CEST (GMT+1)。 1970/01/01 00:00:00.000 CEST 为 1969/12/31 23:00:00.000 GMT,距 1970/01/01 为 -1 小时或 -3600000 毫秒。

关于Java SimpleDateFormat与19700101转换问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6788691/

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