我想用 Java 解压缩一个包含多个文件和目录的 7zip/lzma 存档。我尝试使用官方的 7zip SDK,但我失败了,因为我的编程技能对于这个主题并不那么先进。但是,我喜欢一些使 Java 支持更容易的库,谈到 LzmaOutputStream/LzmaInputStream - 但是我不知道如何使用这些“流”来解压缩多文件存档。我被困住了。
问问题
5247 次
1 回答
2
在示例中,替换compressed
为 new File("PATH_TO_FILE")。示例代码将产生一个输出流,我想 LzmaOutputStream 或库具有将流转换为二进制或字符串的适当方法。
默认情况下,Lzma 只是一种压缩算法,而不是像 tar 或 zip 这样的文件存档器。(注意:7-Zip 程序是一个文件归档器,但您链接的库不支持文件遍历和解包。
我建议使用支持良好的压缩算法,如 Zip 或 gz。如果必须使用 lzma,可以使用 tar 构建文件存档,然后使用 lzma 对其进行压缩。或者使用零压缩的 zip。
这是一个java TAR 库。
于 2010-08-12T17:09:39.423 回答