ZipArchive

2010/12/02

iPhoneでZipファイルを扱うライブラリ ZipArchive

このライブラリを利用するには、「libz.xxxxx.dylib」フレームワークが必要。

libz.1.2.3.dylibの追加

iPhone

zipファイルの解凍コーディング

非常に簡単、読み込みファイルパスと書き込みファイルパスを指定して、UnzipFileToメソッドを利用するだけ。

 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,  NSUserDomainMask, YES);
    NSString *outputPath = [paths objectAtIndex:0];
    
    NSString *loadFilePath = [[NSBundle mainBundle] pathForResource:@"test"ofType:@"zip"];
    
    ZipArchive *zipArchive = [[ZipArchive alloc] init];
    
    if([zipArchive UnzipOpenFile:loadFilePath]) {
        BOOL result = [zipArchive UnzipFileTo:[outputPath stringByAppendingPathComponent:@"ext"] overWrite:YES];
        if(result) {
            NSLog(@"success!");
        } else {
            NSLog(@"error!");
        }
        [zipArchive UnzipCloseFile];
    }
    [zipArchive release];

以下のディレクトリに書き出される。

/Users/userName/Library/Application Support/iPhone Simulator/version/Applications/appCode/Documents/ext

すばらしい!