在 iOS 和 OS X 上解压缩和压缩 tar 文件。也支持 gzip tar。
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString* dataPath = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"test.tar.gz"];
NSString* toPath = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"testDir"];
[DCTar decompressFileAtPath:dataPath toPath:toPath error:nil];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString* toPath = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"test.tar.gz"];
NSString* dataPath = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"testDir"];
[DCTar compressFileAtPath:dataPath toPath:toPath error:nil];
重要的是要知道,所有基于文件系统的 tar 命令都使用分块/缓冲方法来节省内存。由于 tar 文件通常用于压缩大量内容,因此强烈建议使用这些方法,而不是内存数据选项。
我从中获取了一些 tar 代码
安装 tarkit 的推荐方法是使用 CocoaPods 包管理器(类似于大多数库)。
pod 'tarkit', '~> 0.1.3'
tarkit 至少需要 iOS 5/OSX 10.7 或更高版本。
tarkit 根据Apache 许可证进行授权。