2

我正在使用 zipArchive sdk 解压缩文件。但是对于大于 4gb 的文件,UnzipOpenFile 调用会失败。请帮忙。

4

1 回答 1

1

我遇到了同样的问题,并试图在几天内解决它。最后,我解决了。

按照我的指示,您可以毫无问题地在 iOS 中解压缩大文件(甚至 8GB)。

这是如何解决它的分步说明:

1) 从https://github.com/flyingdolphinstudio/Objective-Zip下载 Objective-Zip

2) 从https://github.com/nmoinvaz/minizip下载 MiniZip

3) 从 minizip 文件夹(您在步骤 2 中下载)中获取 4 个文件 - ioapi.c、ioapi.h、unzip.c、unzip.h,并将其粘贴到 Objective-Zip/MiniZip 文件夹(覆盖文件)。

4) 转到 Objective-Zip/Objective-Zip/ZipFile.m 并替换此字符串

int err= unzLocateFile(_unzFile, [fileNameInZip cStringUsingEncoding:NSUTF8StringEncoding], 1);

对此

int err= unzLocateFile(_unzFile, [fileNameInZip cStringUsingEncoding:NSUTF8StringEncoding], (unzFileNameComparer)1);

5) 最后,将 Objective-Zip 添加到您的项目中,然后愉快地解压!:)

现在您可以在 iOS 中解压缩大文件。我检查了 8GB-zip,一切都像魅力一样!

PS:Objective-Zip 的开发者会尽快用我的修复更新它,所以这个指令仅适用于 Objective-Zip 0.8.1。

于 2013-05-22T13:27:26.183 回答