繁体   English   中英

时间戳在java中没有正确转换日期

[英]Time stamp not converted in date properly in java

我正在尝试使用以下代码将时间戳转换为日期:

String str = "14799744000000800";//last four digit is time zone
 DateFormat timeZoneFormat = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
 timeZoneFormat.setTimeZone(TimeZone.getTimeZone("GMT-8"));

 Date time = new java.util.Date(Long.parseLong(str));
 System.out.println(timeZoneFormat.format(time));

但它打印'21 -03- 470955 00:00:00'而不是21-03-2016 00:00:00。

你可以看到年份部分没有正确转换。如何解决这个问题?

当前的毫秒值是1481007881541 ,所以14799744000000800似乎确实在未来。

编辑根据您以后的评论,您可以从字符串中删除最后四位数字。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM