【发布时间】:2016-05-31 10:03:19
【问题描述】:
Java version "1.8.0_40"
Java(TM) SE Runtime Environment (build 1.8.0_40-b26)
我正在使用核心 java.util.zip 类。现在在使用此代码解压缩客户端文件时:
public static InputStream unzip(String file,InputStream zip)
throws IOException {
file = file.toLowerCase();
ZipInputStream zin = new ZipInputStream(new BufferedInputStream(zip));
ZipEntry ze;
while( (ze = zin.getNextEntry()) != null ) {
if ( ze.getName().toLowerCase().equals(file) )
return zin;
}
throw new RuntimeException(file+" not found in zip");
}
我收到以下错误:
invalid entry size (expected 1355916815 but got 5650884111 bytes)
但是,相同的代码在 JDK 1.6 中也能正常工作。
我找了一天也没有发现Java JDK中有与此代码对应的任何更改。
请帮助我找到合适的原因或链接来支持我的发现。
【问题讨论】:
标签: java java-8 jdk1.6 zipinputstream