java处理压缩文件,JAVA处理tar.gz结尾的压缩文件 的解决方案

最近接到一个需求,做个进程,涉及去某台服务器上面取tar.gz压缩文件,然后进行解压。

奈何自己没搞过类似的需求。自己很懵逼。最后一番波折写出以下代码。

谨做个人笔记。

知识前提:

1、tar.gz为后缀的文件是一种压缩文件,在Linux和macOS下常见,Linux和macOS都可以直接解压使用这种压缩文件。但是我们是要从Java!扯什么Linux和macOS!!!!

2、自测代码,可以通过自己压缩一个tar.gz压缩包。压缩工具推荐7-zip。先tar压缩,再gzip压缩。

9f6ac10095c6dffbcbe3716b4d8b7d62.png

3、先使用GZIPInputStream读取文件(为什么要先用GZIPInputStream,建议参考tar.gz文件是怎么生成,个人理解。)。生成文件,再进行使用FileInputStream和FileOutputStream文件流进行读文件和写文件。

4、类TarEntry

隶属于 Apcache org.apache.tools.tar 包的一个类。

这个类TarEntry表示Tar归档文件中的条目。它由条目的标题和条目的File组成。

从存档中读取的标头字节创建的TarEntries使用TarEntry(byte [])构造函数实例化。从存档内容中提取或列出存档内容时,将使用这些条目。

TarEntries只能由名称构成。这使程序员可以手动构造条目。

一&#x


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部