我有以下例外
java.util.zip.ZipException: error in opening zip file
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:114)
at java.util.zip.ZipFile.<init>(ZipFile.java:75)
at test.Test.main(Test.java:56)
在第
行 ZipFile file = new ZipFile(myfile);
仅在特定的zip文件,其他文件工作文件中发生这种情况,但我可以在winRAR
和7zip
等其他程序中打开该文件。
我正在使用Windows XP。
这似乎是一些损坏的文件,但是如果有人知道这是什么原因呢?
答案 0 :(得分:0)
要检查的两件事:
这可能是一个环境问题,即通过使用像winrar这样的其他外部程序来提取zip,您还可以更改执行上下文:进程,用户,权限等...也许您的Java进程无法访问该文件由于某种原因。尝试以管理员身份运行Java,只是为了查看它是否与此相关。
尝试其他几个zip文件,或尝试从相同的java代码创建一个zip文件,然后解压缩,就像你尝试提取有问题的zip一样(即相同的java进程,相同的代码,相同用户和权限等)。这将使您能够查明问题。