今天用到了第三方类库zipArchive解压缩zip文件,用法很简单,如下:
- ZipArchive *zip = [[ZipArchive alloc] init];
- NSString *zipfilePath = @"压缩文件zip的路径";
- if ([zip UnzipOpenFile:zipfilePath]) {
- NSString *unzipPath = @"/Users/****/Desktop/";//保存解压缩后文件目录路径
- BOOL ret = [zip UnzipFileTo:unzipPath overWrite:YES];
- if (NO == ret) {
- [zip UnzipCloseFile];
- }
- [zip release];
- }
然后,我就发现了一个问题,这个类的解压缩方法解压缩后不能获取文件的路径,或者说不能获取文件名,这就有点坑爹了,获取不了文件名那解压缩它干嘛,然后就去类的实现文件ZipArchive.m中去看,研究-(BOOL) UnzipFileTo:(NSString*) path overWrite:(BOOL) overwrite这个方法的实现,突然间,我就发现了一个NSString类型的变量fullPath,我一阵窃喜,这不会就是文件路径吧,用NSLog打印一看,果真是!哈哈,好吧,既然是那我就改造下这个类吧,于是就添加了一个属性unzipfilePath,在此把fullPath赋值给unzipfilePath,然后在程序中直接调用zip.unzipfilePath就获得解压后文件的路径了!
附件是第三方类库ZipArchive。(我改后的)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。