使用 java 将 多个文件打包成 .tar文件
时间: 2024-03-09 07:45:05 浏览: 20
你可以使用 Java 的 TarArchiveOutputStream 类来将多个文件打包成.tar文件。下面是一个示例代码:
```java
import java.io.*;
import org.apache.commons.compress.archivers.tar.*;
public class TarExample {
public static void main(String[] args) throws IOException {
// 要打包的文件列表
File[] filesToTar = {new File("file1.txt"), new File("file2.txt"), new File("file3.txt")};
// 输出的.tar文件
File tarFile = new File("myFiles.tar");
// 创建.tar输出流
FileOutputStream fileOutputStream = new FileOutputStream(tarFile);
BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(fileOutputStream);
TarArchiveOutputStream tarArchiveOutputStream = new TarArchiveOutputStream(bufferedOutputStream);
// 遍历列表,将每个文件添加到.tar文件中
for (File fileToTar : filesToTar) {
TarArchiveEntry tarEntry = new TarArchiveEntry(fileToTar);
tarEntry.setName(fileToTar.getName());
tarArchiveOutputStream.putArchiveEntry(tarEntry);
IOUtils.copy(new FileInputStream(fileToTar), tarArchiveOutputStream);
tarArchiveOutputStream.closeArchiveEntry();
}
// 关闭输出流
tarArchiveOutputStream.finish();
tarArchiveOutputStream.close();
bufferedOutputStream.close();
fileOutputStream.close();
System.out.println("打包完成!");
}
}
```
上述代码使用了 Apache Commons Compress 库中的 TarArchiveOutputStream 类来创建.tar文件,并将指定的文件列表添加到打包文件中。注意:需要先将 Apache Commons Compress 库添加到项目中才能运行以上代码。