【发布时间】:2013-12-12 06:03:38
【问题描述】:
java.util.zip.ZipError为什么会被抛出,能抓到吗?
javadoc 说这意味着发生了不可恢复的错误 - 但这样的错误会是什么?我听说它可能是由错误的 zip 文件引起的。
编辑:
查看 java.util.zip 源代码表明,当尝试访问文件中不存在的元素时会抛出它,但 java.util.zip.ZipFile 类的内部计数表明该元素应该存在。如果另一个线程在ensureOpen 方法检查后试图关闭文件,或者java.util.zip.ZipFile 调用的本机方法出现问题,则会发生这种情况。如果在 Java 应用程序打开文件时更改了文件,这看起来可能会发生。我并不真正了解所涉及的代码库的全部内容(它很大!)。
【问题讨论】:
-
你为什么不抓住它?
-
@redFIVE 因为这是错误而不是异常。
-
@Frankpi 好的,谢谢!
标签: java exception error-handling zip