ZipEntry.getTime()不可预知的结果

时间:2014-12-28 10:13:20

标签: java android timezone

我正在Android上试验ZipEntry.getTime()。但是我在SAME zip&文件的不同设备上看到了不同的结果: 1419755996000, 1419752396000, 1419730796000, 1419770396000, 1419737996000, 1419745196000, 1419759596000, ...

与我的设备在几小时内的差异如下: + 2H, + 1H, -5H, + 6H, -3H, -1H, ...

这些数字是通过分析和记录从​​世界各地的真实设备获得的。 由于我直接使用了getTime()的长结果,所以我并不期望时区很重要。

如何解释这些差异,我该怎样做才能在所有设备上获得统一的结果?

1 个答案:

答案 0 :(得分:3)

在zip文件中,每个条目的日期和时间存储为年,月,日,小时,分钟和秒,编码为long值。没有指定时区。当在Date方法的过程中将其转换为Java getTime()(表示即时)时,将根据系统时区进行转换。