ios中zip包压缩和解压缩
来源:互联网 发布:适合学英语的英剧 知乎 编辑:程序博客网 时间:2024/05/20 02:28
因为项目有这样的需求,查了一下相关的内容。ios中要想实现这个功能,主要需要用到ZipArchive这个开源的第三方库。
一 压缩
1.需要压缩的zip文件的路径。
<div style="text-align: left;"><span style="font-size:14px;"><span style="font-family:FangSong_GB2312;"> NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);</span></span></div><span style="font-family:FangSong_GB2312;font-size:14px;"></span><div style="text-align: left;"> NSString *docDir = [paths objectAtIndex:0];</div><div style="text-align: left;"> NSString *zipFile = [docDir stringByAppendingPathComponent:@"video.zip"];</div>
2.创建压缩文件
<div style="text-align: left;"><span style="font-size:14px;"><span style="font-family:FangSong_GB2312;"> ZipArchive *za = [[ZipArchive alloc] init];</span></span></div><span style="font-family:FangSong_GB2312;font-size:14px;"></span><div style="text-align: left;"> [za CreateZipFile2:zipFile];</div>
3.添加你需要压缩的文件
<div style="text-align: left;"><span style="font-size:14px;"><span style="font-family:FangSong_GB2312;"> //audio.amr</span></span></div><span style="font-family:FangSong_GB2312;font-size:14px;"></span><div style="text-align: left;"> NSString *audioPath = [docDir stringByAppendingPathComponent:@"audio.amr"];</div><div style="text-align: left;"> [za addFileToZip:audioPath newname:@"audio.amr"];</div>
4.把压缩文件写到磁盘
BOOL success = [za CloseZipFile2];
需要注意的是,要是压缩文件夹的话,应该这样处理
<span style="font-size:18px;"> NSString *fileName=[NSString stringWithFormat:@"resources/%@",[contents objectAtIndex:i]]; [za addFileToZip:filePath newname:fileName];</span>
二 解压缩
1获取要解压缩的zip包的路径
NSString *zipPath = [[NSBundle mainBundle]pathForResource:@"video" ofType:@"zip"];
2要解压到的路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *docspath = [paths objectAtIndex:0];
3解压缩
if ([za UnzipOpenFile: zipPath]) { BOOL ret = [za UnzipFileTo: docspath overWrite: YES]; if (NO == ret) { } [za UnzipCloseFile]; }
0 0
- ios中zip包压缩和解压缩
- java zip API实现压缩和解压缩zip包
- java zip API实现压缩和解压缩zip包
- java zip API实现压缩和解压缩zip包
- java zip API实现压缩和解压缩zip包
- java zip API实现压缩和解压缩zip包
- vc zip压缩和解压缩
- vc zip压缩和解压缩
- zip压缩和解压缩文件夹
- 压缩和解压缩ZIP文件
- java中ant包中的org.apache.tools.zip实现压缩和解压缩
- java中生成和解压缩zip文件
- IOS中使用SSZipArchive压缩和解压缩
- 【Java】IO操作之使用zip包压缩和解压缩文件
- IO操作之使用zip包压缩和解压缩文件
- 使用java.util.zip包压缩和解压缩文件
- 使用java.util.zip包压缩和解压缩文件
- ios-gzip压缩和解压缩
- 无聊写排序之 ---- 归并排序(MergeSort) 非递归实现
- 如何异步调用一个java方法,
- SIFT特征提取
- hdu4606 Occupy Citie 简单计算几何,最小路径覆盖
- 二叉树前序,中序,后序遍历相互求法
- ios中zip包压缩和解压缩
- light-1001
- 开始学习C#,用c#写冒泡,杨辉三角
- Storm高级原语(四) — Trident API 综述
- loadRunner 测试报错
- 跳可以长高吗
- CentOS 7最小化安装后找不到‘ifconfig’命令——修复小提示
- PHP计算两个经纬度之间的距离
- IT忍者神龟之数据库采用select方式拼接insert