java将文件打包zip
ZipUtil.java
package com.soc.cloud.groupAssetDataManage.util;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Date;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import com.soc.cloud.excel.util.DateUtil;
public class ZipUtil {
/**
*
* @param imgUrl 需要打包的路径集合
* @param zipFilePathExport 打包后zip所在的文件夹
* @param zipFileName 打包后zip文件名
* @return
*/
public static String toZip2(List<String> imgUrl,String zipFilePathExport,String zipFileName) {
ZipOutputStream zos = null ;
BufferedOutputStream out;
try {
out = new BufferedOutputStream(new FileOutputStream(new File(zipFilePathExport +"/"+ zipFileName)));
zos = new ZipOutputStream(out);
// 将所有文件打包进zip包
for (String isfileUrl : imgUrl) {
File isfile = new File(isfileUrl);
String fileName = isfileUrl.substring(isfileUrl.lastIndexOf("/")+1);
if(isfile.exists()) {
InputStream in = new BufferedInputStream(new FileInputStream(isfile));
zos.putNextEntry(new ZipEntry(fileName));
byte[] b2 = new byte[1024];
int bytesRead2;
while ((bytesRead2 = in.read(b2)) > 0) {
zos.write(b2, 0, bytesRead2);
}
in.close();
zos.closeEntry();
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
zos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
// 返回zip的路径(传回页面进行导出)
return zipFilePathExport + "/" + zipFileName;
}
}

浙公网安备 33010602011771号