在Objective-C中,如何将压缩在ZIP存档中的多个文件的内容读入NSString变量中

在Objective-C中,如何将压缩在ZIP存档中的多个文件的内容读入NSString变量中,objective-c,zip,zlib,compression,Objective C,Zip,Zlib,Compression,在Objective-C(用于iOS)中,有没有办法将ZIP存档中的文件读入内存 因此,ZIP中的每个文件都是一个文本文件。我需要做的是迭代ZIP归档文件中的文件,直到按名称找到所需的文件,然后将其内容(即文本数据)读取到NSString变量 这可能与zlib有关吗?在这个库的头文件中,我看不到执行这种任务的任何内容,比如读取zip存档中的文件 另外,我在interent上检查的其他库似乎只解压缩到一个目录,但是,我需要的是将zip存档中的文件内容读取到一个NSString变量中 谢谢你可以使用

在Objective-C(用于iOS)中,有没有办法将ZIP存档中的文件读入内存

因此,ZIP中的每个文件都是一个文本文件。我需要做的是迭代ZIP归档文件中的文件,直到按名称找到所需的文件,然后将其内容(即文本数据)读取到NSString变量

这可能与zlib有关吗?在这个库的头文件中,我看不到执行这种任务的任何内容,比如读取zip存档中的文件

另外,我在interent上检查的其他库似乎只解压缩到一个目录,但是,我需要的是将zip存档中的文件内容读取到一个NSString变量中


谢谢

你可以使用很多图书馆。谷歌是你的朋友,只有两个。

您可以使用我的库快速完成此操作:

ZZArchive* archive = [ZZArchive archiveWithContentsOfURL:zipFileURL];
NSString* foundContent = nil;
for (ZZArchiveEntry* entry in archive.entries)
  if ([entry.fileName isEqualToString:fileNameToFind])
    foundContent = [[NSString alloc] initWithData:entry.data
                                         encoding:NSUTF8StringEncoding];