iPhone zip压缩与解压

ziparchive是基于开源代码"MiniZip"的zip压缩与解压的Objective-C 的Class,使用起来非常的简单.你只需要把代码加进你的工程,然后把zlib库添加到工程就可以了.
ziparchive可以在googlecode上下载,地址如下: http://code.google.com/p/ziparchive/
参考贴: http://www.iphonedevsdk.com/foru ... p-format-files.html

压缩:
    ZipArchive可以压缩多个文件,只需要把文件一一addFileToZip即可.
  1.    ZipArchive* zip = [[ZipArchive alloc] init];
  2.          
  3.     NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
  4.           NSString *dcoumentpath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
  5.           NSString* l_zipfile = [dcoumentpath stringByAppendingString:@"/test.zip"] ;
  6.          
  7.           NSString* image1 = [dcoumentpath stringByAppendingString:@"/image1.jpg"] ;   
  8.           NSString* image2 = [dcoumentpath stringByAppendingString:@"/image2.jpg"] ;       
  9.          
  10.           BOOL ret = [zip CreateZipFile2:l_zipfile];
  11.           ret = [zip addFileToZip:image1 newname:@"image1.jpg"];
  12.           ret = [zip addFileToZip:image2 newname:@"image2.jpg"];
  13.           if( ![zip CloseZipFile2] )
  14.           {
  15.               l_zipfile = @"";
  16.           }
  17.           [zip release];
复制代码
解压缩:
  1. ZipArchive* zip = [[ZipArchive alloc] init];
  2.           NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
  3.           NSString *dcoumentpath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
  4.          
  5.           NSString* l_zipfile = [dcoumentpath stringByAppendingString:@"/test.zip"] ;
  6.           NSString* unzipto = [dcoumentpath stringByAppendingString:@"/test"] ;
  7.           if( [zip UnzipOpenFile:l_zipfile] )
  8.           {
  9.               BOOL ret = [zip UnzipFileTo:unzipto overWrite:YES];
  10.               if( NO==ret )
  11.               {
  12.               }
  13.               [zip UnzipCloseFile];
  14.           }
  15.           [zip release];
复制代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值