java.util.zip.ZipException: error in opening zip file

public class TestZipFile {


public static void main(String[] args) {
String filePath = "d:\\abc.zip";
File file = new File(filePath);
try {
//构造方法ZipFile(File file)或ZipFile(String filePath)
//打开ZIP文件进行阅读;
ZipFile zipFile = new ZipFile(file);
//返回 ZIP 文件条目的枚举
Enumeration entryEnum = zipFile.entries();
while (entryEnum.hasMoreElements()){
//hasMoreElements():测试此枚举是否包含更多的元素
//nextElement():如果此枚举对象至少还有一个可提供的元素,则返回此枚举的下一个元素。
//ZipEntry:此类用于表示 ZIP 文件条目
ZipEntry zipEntry = (ZipEntry)entryEnum.nextElement();
if(zipEntry.isDirectory()){
System.out.println("这是一个目录.......");
}else{
//getSize():返回条目数据的未压缩大小;如果未知,则返回 -1。
System.out.println(zipEntry.getSize());
}
}
} catch (ZipException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

}

对于该段代码,如果生成的ZIP文件,即本例中的abc.zip,格式不正确,在打开ZIP文件时,即执行ZipFile zipFile = new ZipFile(file)时则抛出java.util.zip.ZipException: error in opening zip file。所谓格式不正确包括:从linux系统下载的文件在window系统上读写,或由.rar强转而成的.zip文件(二者在压缩和解压时的算法不一样)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值