0

我正在开发典型的报亭应用程序,但解压缩下载的文件时遇到问题。

-(void)connectionDidFinishDownloading:(NSURLConnection *)connection destinationURL:(NSURL *)destinationURL {

// 将文件复制到目标目录

NSURL *finalURL = [[self contentURL] URLByAppendingPathComponent:@"magazine.zip"]; ELog(@"将项目从 %@ 复制到 %@",destinationURL,finalURL);

[[NSFileManager defaultManager] copyItemAtURL:destinationURL toURL:finalURL error:NULL]; [[NSFileManager defaultManager] removeItemAtURL:destinationURL error:NULL];

// 下载的文件 magazine.zip 现在在 finalURL 中,下一步我会尝试解压缩它

[SSZipArchive unzipFileAth:[finalURL path] toDestinan:[[self contentURL]path] overwrite:YES password:nil error:nil];

[self sendEndOfDownloadNotification]; }

什么也没有发生。我检查了文件是否真的位于 finalURL 路径,是的。SSZipArchive 无法打开 magazine.zip 文件。我试图找到一些示例如何解压缩下载的报亭问题,但我没有找到任何东西。

4

1 回答 1

1

destinationURL 是您下载的 zip 文件的临时路径。您应该直接将文件从此处解压缩到目的地

    [SSZipArchive unzipFileAth:[destinationURL path] toDestination:[[self contentURL] URLByAppendingPathComponent:@"magazine.zip"] overwrite:YES password:nil error:nil]; 
//Remove temp file
[[NSFileManager defaultManager] removeItemAtURL:destinationURL error:NULL];
于 2012-03-17T06:54:46.760 回答