黑莓 - 解压缩的 Zip 文件

3
我正在开发一个黑莓应用程序,需要解压缩使用PKZIP压缩的zip文件。每个包中可能有一个或十个文件,每种情况都不同。我知道BlackBerry API原生支持GZip和Zlib,但我相信这些方法在我的情况下并没有帮助。看起来似乎无法使用这些调用提取单个文件。
我已经尝试了JZlib(http://www.jcraft.com/jzlib/),编译成功,但似乎其中包含的方法也不能允许我提取单个文件。
似乎这是可能的,因为有一个名为Ziplorer(http://www.s4bb.com/software/ziplorer/)的应用程序声称可以执行此精确过程。然而,他们是如何做到的,我不明白。
所以,在经过几个小时的谷歌搜索后,我非常欢迎任何对我的问题的见解。

你是否考虑过,在使用 GNU 或开源许可资源的同时,发布应用程序以获取(我假设的)利润时可能存在的许可问题? - Dmitri Farkov
该应用程序实际上将是免费的,因此我不认为会有任何许可问题。 - harrywynn
2个回答

0
“zip”算法通常是Lempel-Ziv-Welch算法的变体。它们是相对高效的流压缩算法,但由于其工作机制,您不能从文件中的任意位置开始解压缩,必须从开头开始。
任何声称能够解压缩zip文件中的一个文件的产品仍然需要解压缩文件之前的所有内容,以便知道如何解密给定文件,或者甚至在存档中找到文件的位置。

虽然如此,这并不是对原问题的回答。有许多zipfile API /库可用于从存档中检索单个文件,例如Python的zipfile库。简单来说,您可以通过从开头开始解码并丢弃不需要的文件来实现。 - Malcolm Box

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接