文章目录
前言
int型 时间戳(秒)通过new Date转换后得到的字符串一直是1970年!!
以下是本篇文章正文内容
一、问题引发
1、获取系统的当前秒数为:1617032138
2、通过new Date(sec * 1000)转换为日期
3、通过格式化转换为日期字符串

4、得到的结果:1970-01-25 22:07:14
二、不明所以
这个结果,看着明显不对劲,在线转换一下,正常结果显然是:2021-3-29 23:35:38

三、灵光一闪,神奇的“L”
网络上查找了些资料,比如:时区设置等,都试了一下,没鸟用!
不知道为啥,脑中突然灵光一闪,就顺指加了个“L”,
也就是,new Date(sec * 1000L)。
没想到

本文记录了一个在Java中将int型时间戳转换为日期时遇到的问题,即转换结果始终显示为1970年。作者尝试了多种解决办法未果,直到在时间戳前添加了L,问题迎刃而解。文章总结了这一奇怪现象,并邀请读者分享其背后的原因。
最低0.47元/天 解锁文章
571

被折叠的 条评论
为什么被折叠?



