文件的压缩和解压
使用第三方框架
ZipArchive
注意
: 需要引入libz.dylib框架
导入头文件Main.h如何导入libz.dylib框架 ?
- 创建压缩文件
+ (BOOL)createZipFileAtPath:(NSString *)path
withFilesAtPaths:(NSArray *)paths;
+ (BOOL)createZipFileAtPath:(NSString *)path
withContentsOfDirectory:(NSString *)directoryPath;
解压
+ (BOOL)unzipFileAtPath:(NSString *)path
toDestination:(NSString *)destination
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
// 压缩1
// [self zip1];
// 压缩2
// [self zip2];
// 解压
[self unZip];
}
压缩的方式1
- (void)zip2 {
NSArray *filesPath = @[
@"/Users/hwm/Desktop/zip/Snip20151001_3.png",
@"/Users/hwm/Desktop/zip/Snip20151004_9.png",
@"/Users/hwm/Desktop/zip/Snip20151004_10.png"
];
/*
第一个参数:创建的zip放在哪里
第二个参数:要压缩哪些文件
*/
[Main createZipFileAtPath:@"/Users/hwm/Desktop/MM.zip" withFilesAtPaths:filesPath];
}
压缩方式2
- (void)zip1 {
/*
第一个参数:创建的zip放在哪里
第二个参数:要压缩的文件路径
*/
[Main createZipFileAtPath:@"/Users/hwm/Desktop/hwm.zip" withContentsOfDirectory:@"/Users/hwm/Desktop/zip"];
}
解压
- (void)unZip {
/*
第一个参数:需要解压的zip在哪里
第二个参数:解压的文件放到哪里
*/
[Main unzipFileAtPath:@"/Users/hwm/Desktop/hwm.zip" toDestination:@"/Users/hwm/Desktop/unZipMM.zip"];
}