JAVA 批量文件压缩为zip包下载
需要用到ant.jar包
Jar包下载地址:
http://www.doczj.com/doc/7c61ab6fcaaedd3383c4d3f0.html/f/16630098.html?from=like
/**
* 点击批量下载触发的方法
* @return
*/
@SuppressWarnings("unchecked")
public String moredownload(){
@SuppressWarnings("unused")
List list1 = checktb;
System.out.println();
//==========================多文件压缩成zip包下载测试
========================================
//生成的ZIP文件名为Demo.zip
String tmpFileName = "Demo.zip";
String FilePath = "D:\\";
byte[] buffer = new byte[1024];
String strZipPath = FilePath + tmpFileName;
try {
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(
strZipPath));
// 需要同时下载的两个文件result.txt ,source.txt
File[] file1 = { new File(FilePath+"1.txt"),
new File(FilePath+"2测试文档.doc") };
for (int i = 0; i < file1.length; i++) {
FileInputStream fis = new FileInputStream(file1[i]); out.putNextEntry(new ZipEntry(file1[i].getName()));
//设置压缩文件内的字符编码,不然会变成乱码
out.setEncoding("GBK");
int len;
// 读入需要下载的文件的内容,打包到zip文件
while ((len = fis.read(buffer)) > 0) {
out.write(buffer, 0, len);
}
out.closeEntry();
fis.close();
}
out.close();
this.downFile(getResponse(), tmpFileName);
} catch (Exception e) {