xcode& (联合国)zip文件

时间:2014-06-10 11:38:00

标签: ios7 xcode5 unzip

我有一个问题,我开发了一个应用程序,我实际上需要解压缩文件。我从互联网上收到的这些文件,保存在设备的文件夹中并尝试解压缩。 但是......解压缩永远不会发生。我收到的消息是: 错误域= SSZipArchiveErrorDomain代码= -1"无法打开zip文件" UserInfo = 0xad36430 {NSLocalizedDescription =无法打开zip文件}

我也尝试了其他库...但结果是一样的。

zip文件由服务器生成(因此我们无法控制此部分。)但我们知道他们使用gzip来创建此文件。

我已经使用了"搜索" ...但没有运气。 一个更重要的说明。如果我在我的mac上解压缩这个文件,而不是再次压缩它并指向" localFilePath"到这个新文件,一切正常!此外,服务器人说他们在其他应用程序中使用此ZIP完全没有问题。

我需要查看哪些建议?

由于

代码:

NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:configuration];

NSURL *URL = [NSURL URLWithString:@"http://......"];
NSURLRequest *request = [NSURLRequest requestWithURL:URL];

NSURLSessionDownloadTask *downloadTask = [manager downloadTaskWithRequest:request progress:nil destination:^NSURL *(NSURL *targetPath, NSURLResponse *response) {
    NSURL *documentsDirectoryURL = [[NSFileManager defaultManager] URLForDirectory:NSDocumentDirectory inDomain:NSUserDomainMask appropriateForURL:nil create:NO error:nil];

    return [documentsDirectoryURL URLByAppendingPathComponent:[response suggestedFilename]];
} completionHandler:^(NSURLResponse *response, NSURL *filePath, NSError *error) {
    NSLog(@"File downloaded to: %@", filePath);

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *localFilePath = [[paths objectAtIndex:0] stringByAppendingPathComponent:[filePath lastPathComponent]];
    NSString *unzipFolder = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"/unzipfolder"];

    NSLog(@"localFilePath: %@",localFilePath);
    NSLog(@"unzip folder: %@",unzipFolder);

    NSError *erro = nil;
    [SSZipArchive unzipFileAtPath:localFilePath toDestination:unzipFolder overwrite:YES password:nil error:&erro delegate:self];
    NSLog(@"Erro: %@",erro);
}];
[downloadTask resume];

0 个答案:

没有答案