Zip压缩
- 压缩
ZipUtil.zip
方法提供一系列的重载方法,满足不同需求的压缩需求,这包括:
- 打包到当前目录(可以打包文件,也可以打包文件夹,根据路径自动判断)
//将aaa目录下的所有文件目录打包到d:/aaa.zipZipUtil.zip("d:/aaa");
- 指定打包后保存的目的地,自动判断目标是文件还是文件夹
//将aaa目录下的所有文件目录打包到d:/bbb/目录下的aaa.zip文件中// 此处第二个参数必须为文件,不能为目录ZipUtil.zip("d:/aaa", "d:/bbb/aaa.zip"); //将aaa目录下的所有文件目录打包到d:/bbb/目录下的ccc.zip文件中ZipUtil.zip("d:/aaa", "d:/bbb/ccc.zip");
- 可选是否包含被打包的目录。比如我们打包一个照片的目录,打开这个压缩包有可能是带目录的,也有可能是打开压缩包直接看到的是文件。zip方法增加一个boolean参数可选这两种模式,以应对众多需求。
//将aaa目录以及其目录下的所有文件目录打包到d:/bbb/目录下的ccc.zip文件中ZipUtil.zip("d:/aaa", "d:/bbb/ccc.zip", true);
- 多文件或目录压缩。可以选择多个文件或目录一起打成zip包。
ZipUtil.zip(FileUtil.file("d:/bbb/ccc.zip"), false, FileUtil.file("d:/test1/file1.txt"), FileUtil.file("d:/test1/file2.txt"), FileUtil.file("d:/test2/file1.txt"), FileUtil.file("d:/test2/file2.txt") );
- 解压
ZipUtil.unzip
解压。同样提供几个重载,满足不同需求。
//将test.zip解压到e:\\aaa目录下,返回解压到的目录Fileunzip=ZipUtil.unzip("E:\\test\\test.zip", "E:\\test");