ZipException可以在其他程序上打开的文件

时间:2012-11-26 06:41:14

标签: java zip zipfile

我有以下例外

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文件,其他文件工作文件中发生这种情况,但我可以在winRAR7zip等其他程序中打开该文件。 我正在使用Windows XP。

这似乎是一些损坏的文件,但是如果有人知道这是什么原因呢?

1 个答案:

答案 0 :(得分:0)

要检查的两件事:

  1. 这可能是一个环境问题,即通过使用像winrar这样的其他外部程序来提取zip,您还可以更改执行上下文:进程,用户,权限等...也许您的Java进程无法访问该文件由于某种原因。尝试以管理员身份运行Java,只是为了查看它是否与此相关。

  2. 尝试其他几个zip文件,或尝试从相同的java代码创建一个zip文件,然后解压缩,就像你尝试提取有问题的zip一样(即相同的java进程,相同的代码,相同用户和权限等)。这将使您能够查明问题。