zoukankan      html  css  js  c++  java
  • iOS开发之压缩与解压文件

    转:本文固定链接: http://www.istar.name/blog/ios-ziparchive | Star's Blog

    ziparchive是基于开源代码”MiniZip”的zip压缩与解压的Objective-C 的Class,使用起来非常的简单
    方法:从http://code.google.com/p/ziparchive/ 上下载ZipArchive.zip,解压后将代码加入工程中,并且把zlib库添加到工程中
    使用方法:
    1. 压缩:ZipArchive可以压缩多个文件,只需要把文件一一addFileToZip即可.

    ZipArchive* zip = [[ZipArchive alloc] init];
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentpath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
    NSString* l_zipfile = [documentpath stringByAppendingString:@"/test.zip"] ;
              
    NSString* image1 = [documentpath stringByAppendingString:@"/image1.jpg"] ;  
    NSString* image2 = [documentpath stringByAppendingString:@"/image2.jpg"] ;      
              
    BOOL ret = [zip CreateZipFile2:l_zipfile];
    ret = [zip addFileToZip:image1 newname:@"image1.jpg"];
    ret = [zip addFileToZip:image2 newname:@"image2.jpg"];
    if( ![zip CloseZipFile2] )
      {
         l_zipfile = @"";
      }
    [zip release];

    2. 解压缩:

    ZipArchive* zip = [[ZipArchive alloc] init];
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentpath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
              
    NSString* l_zipfile = [documentpath stringByAppendingString:@"/test.zip"] ;
    NSString* unzipto = [documentpath stringByAppendingString:@"/test"] ;
    if( [zip UnzipOpenFile:l_zipfile] )
     {
       BOOL ret = [zip UnzipFileTo:unzipto overWrite:YES];
       if( NO==ret )
       {
       }
       [zip UnzipCloseFile];
     }
    [zip release];
  • 相关阅读:
    vim代码对齐
    在liunx中,快速查找到以前使用过的命令行
    linux文件权限与目录设置
    ASP常用代码
    存储过程
    WebService
    SNS
    浪曦博客系统
    SQL事件探查器与索引优化向导
    光盘AJAX
  • 原文地址:https://www.cnblogs.com/KingQiangzi/p/3314211.html
Copyright © 2011-2022 走看看