java实现将多个文件压缩,得到压缩文件
时间: 2024-04-13 15:28:44 浏览: 99
java实现多个文件压缩成压缩包
你可以使用Java中的ZipOutputStream类来实现将多个文件压缩成一个压缩文件。下面是一个简单的示例代码:
```java
import java.io.*;
import java.util.zip.*;
public class FileCompressor {
public static void main(String[] args) {
String[] filesToCompress = { "file1.txt", "file2.txt", "file3.txt" };
String zipFile = "compressed.zip";
try {
FileOutputStream fos = new FileOutputStream(zipFile);
ZipOutputStream zos = new ZipOutputStream(fos);
for (String file : filesToCompress) {
addToZipFile(file, zos);
}
zos.close();
fos.close();
System.out.println("Files compressed successfully!");
} catch (IOException e) {
e.printStackTrace();
}
}
private static void addToZipFile(String fileName, ZipOutputStream zos) throws IOException {
File file = new File(fileName);
FileInputStream fis = new FileInputStream(file);
ZipEntry zipEntry = new ZipEntry(file.getName());
zos.putNextEntry(zipEntry);
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer)) >= 0) {
zos.write(buffer, 0, length);
}
zos.closeEntry();
fis.close();
}
}
```
在上面的示例中,你需要修改`filesToCompress`数组来指定要压缩的文件名列表,以及`zipFile`变量来指定压缩文件的名称。运行该代码后,将会生成一个名为"compressed.zip"的压缩文件,其中包含了指定的多个文件。
请注意,以上代码只是一个简单的示例,没有处理异常情况和错误处理。在实际应用中,你可能需要添加适当的异常处理和错误检查。
阅读全文