日常数据处理需求中,文件压缩与解压是必不可少,而ZipUtils就是一个非常实用的工具类,他拥有文件和文件夹的压缩及解压功能。并且支持将多个文件和目录压缩为一个ZIP文件,并从ZIP文件中解压文件。
ZipUtils的主要方法
- 压缩单个文件
String sourceFilePath = "D:/java/file.txt";
String zipFilePath = "D:/java/file.zip";
ZipUtils.zip(sourceFilePath, zipFilePath);
System.out.println("文件压缩成功!");
- 压缩目录
String sourceDirPath = "D:/java/directory";
String zipFilePath = "D:/java/directory.zip";
ZipUtils.zip(sourceDirPath, zipFilePath);
System.out.println("目录压缩成功!");
- 解压ZIP文件
String zipFilePath = "D:/java/file.zip";
String destDirPath = "D:/java/directory";
ZipUtils.unzip(zipFilePath, destDirPath);
System.out.println("ZIP文件解压成功!");
- 压缩多个文件到一个ZIP文件
List filesToZip = Arrays.asList(
new File("D:java/file1.txt"),
new File("D:java/file2.jpg"),
new File("D:java/file3.docx")
);
String zipFilePath = "D:java/files.zip";
ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zipFilePath));
for (File file : filesToZip) {
zos.putNextEntry(new ZipEntry(file.getName()));
FileInputStream fis = new FileInputStream(file);
byte[] buffer = new byte[1024];
int len;
while ((len = fis.read(buffer)) != -1) {
zos.write(buffer, 0, len);
}
zos.closeEntry();
fis.close();
}
zos.close();
System.out.println("多个文件压缩成功!");
ZipUtils通过提供易于使用的API和递归处理文件夹内所有文件的能力,无论单个压缩文件、目录,批量处理多个文件到一个ZIP文件,还是解压ZIP文件到指定目录,ZipUtils都能轻松应对。
本文暂时没有评论,来添加一个吧(●'◡'●)