网站建设资讯

NEWS

网站建设资讯

iOS数据压缩与解压

iOS  数据压缩与解压

创新互联公司专业为企业提供东海网站建设、东海做网站、东海网站设计、东海网站制作等企业网站建设、网页设计与制作、东海企业网站模板建站服务,10余年东海做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

Hi,推荐文件给你 "数据压缩与解压.zip"


http://vdisk.weibo.com/s/Gbabp



本文中需要的第三库在本文的代码例子中可以下载。minizip和ZipArchive这两个第三库



ViewController.h代码如下:


#import 
#import "ZipArchive.h"
@interface ViewController : UIViewController
-(IBAction)compress:(id)sender;
-(IBAction)unAr:(id)sender;
@end

ViewController.m代码如下:

自己拖2个Button与如下两个方法相关联

//这方法中数据压缩的方法:

-(IBAction)compress:(id)sender
{
    //导入ZipArchive包之后要加入libz.1.2.5.dylib的库
    ZipArchive* zip = [[ZipArchive alloc] init];
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentpath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
    NSString* zipfilePath = [documentpath stringByAppendingString:@"/dj.zip"] ;
    //
    NSLog(@"%@",zipfilePath);
                     
                     
    NSString* p_w_picpath2 = [[NSBundle mainBundle] pathForResource:@"xiaonan" ofType:@"jpg"];
    NSString* p_w_picpath3 = [[NSBundle mainBundle] pathForResource:@"xiaonan" ofType:@"jpg"];
                     
                     
    //创建压缩包
    BOOL ret = [zip CreateZipFile2:zipfilePath];
    //向压缩包内加入数据
    ret = [zip addFileToZip:p_w_picpath2 newname:@"xiaonan.jpg"];
    ret = [zip addFileToZip:p_w_picpath3 newname:@"p_w_picpath3.jpg"];
    //关闭压缩包
    [zip CloseZipFile2];
                     
                     
    [zip release];
}

//数据解压的方法

-(IBAction)unAr:(id)sender
{
        
    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:@"/dj.zip"] ;
    NSString* unzipto = [documentpath stringByAppendingString:@"/dj"] ;
         
         
    //找到需要解压文件的路径
    if( [zip UnzipOpenFile:l_zipfile] )
    {
        BOOL ret = [zip UnzipFileTo:unzipto overWrite:YES];
        if( NO==ret )
        {
        }
        //完成解压
        [zip UnzipCloseFile];
    } 
    [zip release];
}

分享标题:iOS数据压缩与解压
文章URL:http://njwzjz.com/article/psghse.html