所以我有一个 zip 文件,它是使用 Objective-Zip 提取的。然后将提取的内容放入 NSData 对象中。我想将内容保存到应用程序文档文件夹中。问题是这些是多个文件,而 writeToFile:atomically: 将 zip 的内容保存到一个文件中。
有任何想法吗?我看到的另一个问题刚刚说要使用 ZipArchive。
我需要快速帮助,因为应用程序需要在我明天工作结束时完成。
所以我有一个 zip 文件,它是使用 Objective-Zip 提取的。然后将提取的内容放入 NSData 对象中。我想将内容保存到应用程序文档文件夹中。问题是这些是多个文件,而 writeToFile:atomically: 将 zip 的内容保存到一个文件中。
有任何想法吗?我看到的另一个问题刚刚说要使用 ZipArchive。
我需要快速帮助,因为应用程序需要在我明天工作结束时完成。
我认为您需要使用 ZipArchive:
ZipArchive* za = [[ZipArchive alloc] init];
NSData *Data = [NSData dataWithContentsOfURL:url]; // here url is your zip url
NSArray *documentPathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirString = [documentPathArray objectAtIndex:0];
NSString *filePath = [documentsDirString stringByAppendingPathComponent:@"temp.zip"];
NSURL *fileURL = [NSURL fileURLWithPath:filePath];
NSError *writeError = nil;
[Data writeToURL: fileURL options:0 error:&writeError];
if( writeError) {
NSLog(@" Error in writing file %@' : \n %@ ", filePath , writeError );
return;
}
if( [za UnzipOpenFile:filePath] )
{
BOOL ret = [za UnzipFileTo:documentsDirz overWrite:YES];
if( NO==ret )
{
NSLog(@"NO");
}
[za UnzipCloseFile];
}