【IOS开发】zip解压缩第三方类库ZipArchive返回解压后文件路径

今天用到了第三方类库zipArchive解压缩zip文件,用法很简单,如下:


1.  ZipArchive *zip = [[ZipArchive alloc] init]; 
2.  NSString *zipfilePath = @"压缩文件zip的路径";
3.  if ([zip UnzipOpenFile:zipfilePath]) { 
4.  NSString *unzipPath = @"/Users/****/Desktop/";//保存解压缩后文件目录路径 
5.  BOOL ret = [zip UnzipFileTo:unzipPath overWrite:YES]; 
6.  if (NO == ret) { 
7.  [zip UnzipCloseFile]; 
8.  } 
9.  [zip release]; 
10.  } 

然后,我就发现了一个问题,这个类的解压缩方法解压缩后不能获取文件的路径,或者说不能获取文件名,这就有点坑爹了,获取不了文件名那解压缩它干嘛,然后就去类的实现文件ZipArchive.m中去看,研究-(BOOL) UnzipFileTo:(NSString*) path overWrite:(BOOL) overwrite这个方法的实现,突然间,我就发现了一个NSString类型的变量fullPath,我一阵窃喜,这不会就是文件路径吧,用NSLog打印一看,果真是!哈哈,好吧,既然是那我就改造下这个类吧,于是就添加了一个属性unzipfilePath,在此把fullPath赋值给unzipfilePath,然后在程序中直接调用zip.unzipfilePath就获得解压后文件的路径了!

附件是第三方类库ZipArchive。(我改后的)

附件:http://down.51cto.com/data/2361681

原文地址:
http://blog.51cto.com/wuhao999/1040897

你可能感兴趣的:(【IOS开发】zip解压缩第三方类库ZipArchive返回解压后文件路径)