在Java中,你可以使用java.util.zip.ZipOutputStream
類來壓縮多個文件。以下是一個簡單的例子來演示如何壓縮多個文件:
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
public class ZipExample {
public static void main(String[] args) {
String[] files = {"file1.txt", "file2.txt", "file3.txt"};
String zipFileName = "compressed.zip";
try (ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zipFileName))) {
for (String file : files) {
try (FileInputStream fis = new FileInputStream(file)) {
ZipEntry entry = new ZipEntry(file);
zos.putNextEntry(entry);
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = fis.read(buffer)) != -1) {
zos.write(buffer, 0, bytesRead);
}
zos.closeEntry();
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在這個例子中,我們首先指定要壓縮的多個文件的文件名,并且指定要生成的zip文件名。然后我們使用ZipOutputStream
類創建一個輸出流,并逐個讀取并壓縮每個文件。最后,在處理完所有文件后,我們關閉輸出流。
你可以根據你的需求修改文件名、路徑和壓縮操作。