安卓 ZipFile 打开大文件似乎有问题

2022-02-07 12:03:51 +08:00
 SupperMary

如题,使用安卓的 java.util.zip.ZipFile;

File file = new File("/storage/sda1/testzip.zip");
ZipFile zip = new ZipFile(file);

如果 testzip.zip 超过 2GB ,则报以下错误

02-07 11:03:46.683 10360 10360 E zip     : java.util.zip.ZipException: error in opening zip file
02-07 11:03:46.683 10360 10360 E zip     : 	at java.util.zip.ZipFile.open(Native Method)
02-07 11:03:46.683 10360 10360 E zip     : 	at java.util.zip.ZipFile.<init>(ZipFile.java:265)
02-07 11:03:46.683 10360 10360 E zip     : 	at java.util.zip.ZipFile.<init>(ZipFile.java:187)
02-07 11:03:46.683 10360 10360 E zip     : 	at java.util.zip.ZipFile.<init>(ZipFile.java:201)

zip 文件不超过 2GB 时是 ok 的。

已经在安卓 9 和安卓 10 上试验,均是同样的现象。

大佬们有啥排查方向吗

4866 次点击
所在节点    Android
2 条回复
nicevar
2022-02-07 12:31:42 +08:00
系统不支持,要 zip64 才行
SupperMary
2022-02-07 15:50:04 +08:00
@nicevar 感谢,确实是 32 位系统的原因,换 64 位系统可以了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/832201

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX