今天用到了第三方类库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。(我改后的)
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。