ira*_*ira 10 java compression gzip
我需要在里面创建一个包含多个文件的gzip存档,如何在没有类ArchiveEntry可用的情况下执行此操作java.util.zip.GZIPOutputStream?
Arj*_*kar 12
按照维基百科条目上gzip:
虽然它的文件格式也允许连接多个这样的流(压缩文件只是解压缩连接,就好像它们原来是一个文件一样),但gzip通常用于压缩单个文件.
这就是为什么GZIPOutputStream不支持ArchiveEntry.
通常,将多个文件存档为一个文件tar,然后进行压缩gzip以生成.tar.gz压缩存档.
您可以tar.gz通过使用以下Apache Commons Compress实现以tar这种方式创建:
file_out = new FileOutputStream (new File ("archive.tar.gz"));
buffer_out = new BufferedOutputStream (file_out);
gzip_out = new GzipCompressorOutputStream (buffer_out);
tar_out = new TarArchiveOutputStream (gzip_out);
// .. and then talk to 'tar_out' to write stuff
Run Code Online (Sandbox Code Playgroud)
GZip 压缩流。通常,当人们将 GZip 与多个文件一起使用时,他们也会使用 tar 将它们一起咀嚼
你可以在这里找到一个 java tar 库:http : //www.trustice.com/java/tar/
或者你可以使用 Zip 而不是 GZip
| 归档时间: |
|
| 查看次数: |
12335 次 |
| 最近记录: |