美文网首页
iOS压缩文件与解压缩文件

iOS压缩文件与解压缩文件

作者: 流老湿 | 来源:发表于2018-03-30 10:43 被阅读80次

    使用第三方框架ZipArchive进行压缩与解压,cocoapod:pod 'ZipArchive'

    1.压缩

    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 = @"";

        }

    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];

        }

    乱码处理问题

    里面是一些带特殊符号的文件, 使用zipArchive解压后会出现乱码。

    解决方法是到ZipArchive.mm文件中找到

    NSString * strPath = [NSString 

    stringWithCString:filename];

    换成UTF8方式解压, 如下:

    NSString * strPath = [NSString 

    stringWithUTF8String:filename];

    但是有时后中文也会有问题, 用如下方式:

    NSStringEncoding enc =

    CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);

    NSString * strPath = [NSString 

    stringWithCString:filename encoding:enc];

    相关文章

      网友评论

          本文标题:iOS压缩文件与解压缩文件

          本文链接:https://www.haomeiwen.com/subject/aoibcftx.html