java解压缩zip - 多个文件(包括文件夹),具体如下:
对多个文件和文件夹进行压缩,对复杂的文件目录进行解压。
压缩方法使用的是可变参数,可以压缩1到多个文件..可以写数组的方式或者一个个写到参数列表里面...
zipfiles(zip,"abc",new file("d:/english"),new file("d:/发放数据.xls"));
测试文件目录结构:
测试的压缩内容:english文件夹和同级的两个excel文件
file[] files = new file[]{new file("d:/english"),new file("d:/发放数据.xls"),new file("d:/中文名称.xls")};
下面是压缩的代码:
/**
* 压缩文件-由于out要在递归调用外,所以封装一个方法用来
* 调用zipfiles(zipoutputstream out,string path,file... srcfiles)
* @param zip
* @param path
* @param srcfiles
* @throws ioexception
* @author isea533
*/
public static void zipfiles(file zip,string path,file... srcfiles) throws ioexception{
zipoutputstream out = new zipoutputstream(new fileoutputstream(zip));
ziptest.zipfiles(out,path,srcfiles);
out.close();
system.out.println("*****************压缩完毕*******************");
}
/**
* 压缩文件-file
* @param zipfile zip文件
* @param srcfiles 被压缩源文件
* @author isea533