用Java解压缩具有多个文件和目录的7zip存档[关闭]
题
我想用Java来解压缩带有多个文件和目录的7zip / lzma存档。我尝试使用官方的7zip SDK,但由于我的编程技能在该主题上并不先进,因此我失败了。 但是,我喜欢一些使Java支持更加轻松的库,说到LzmaOutputStream / LzmaInputStream-但是我不知道如何使用这些“流”来解压缩多文件存档。我被困住了。
解决方案
在示例中,将compressed
替换为新的File(“ PATH_TO_FILE”)。该示例代码将产生一个输出流,我想LzmaOutputStream或该库具有将流转换为二进制或字符串的适当方法。
默认情况下,Lzma只是一种压缩算法,而不是tar或zip之类的文件存档器。(注意:7-Zip程序是一个文件存档器,但是链接到的库不支持文件遍历和解压缩。
我建议使用支持良好的压缩算法,例如Zip或gz。如果必须使用lzma,则可以使用tar来构建文件存档,然后使用lzma对其进行压缩。或使用零压缩的zip。
这是一个 java TAR库。
不隶属于 StackOverflow