生成zip文件

本文介绍了一种使用Java实现的将XML文件和PNG图片压缩到ZIP文件的方法。该方法通过ZipInputStream读取源文件,并利用ZipOutputStream将其写入目标ZIP文件中。文章详细展示了如何遍历文件内容并判断文件类型,确保只有指定类型的文件被压缩。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

expected 25847 but got 25900 bytes)

public void zip(File file,String fileFileName) throws IOException{
String classpath;
ZipOutputStream zos = null;
FileInputStream is = null;
ZipInputStream zipis = null;
try {
classpath = GetProjectRoot.getProjectRoot();
is = new FileInputStream(file);
// 把文件输入流转换为压缩输入流
zipis = new ZipInputStream(is);
zos= new ZipOutputStream(new FileOutputStream(classpath+"jpdl/"+fileFileName));
ZipEntry entry = null;
//验证是否包含一个xml文件和png图片,并将xml和png图片进行压缩
while ((entry = zipis.getNextEntry()) != null) {
if(entry.getName().indexOf(".xml")>0 || entry.getName().indexOf(".png")>0){//后缀不可能在第一位出现所以是>0
zos.putNextEntry(new ZipEntry(entry.getName()));
byte data[] = new byte[1024];
int len=0;
while((len=zipis.read(data))!=-1){
zos.write(data, 0, len);
}
}
}
} catch (Exception e) {
e.printStackTrace();

}finally{
if(is!=null){
is.close();
}
if(zipis!=null){
zipis.close();
}
if(zos!=null){
zos.close();
}
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值