Sample code for 30+ languages & platforms
Objective-C

Unzip Selected Files from a Zip Archive

See more Zip Examples

Demonstrates how to iterate over the files contained within a .zip and unzip specific files.

Chilkat Objective-C Downloads

Objective-C
#import <CkoZip.h>
#import <NSString.h>
#import <CkoZipEntry.h>

BOOL success = NO;

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

CkoZip *zip = [[CkoZip alloc] init];

success = [zip OpenZip: @"my_files.zip"];
if (success == NO) {
    NSLog(@"%@",zip.LastErrorText);
    return;
}

NSString *unzipDir = @"/temp/unzipDir";

// Get the number of files and directories in the .zip
int n = [zip.NumEntries intValue];

CkoZipEntry *entry = [[CkoZipEntry alloc] init];

int i = 0;
while (i < n) {

    [zip EntryAt: [NSNumber numberWithInt: i] entry: entry];
    if (entry.IsDirectory == NO) {
        // (the filename may include a path)
        NSLog(@"%@",entry.FileName);

        // Your application may choose to unzip this entry
        // based on the filename.
        // If the entry should be unzipped, then call Extract(unzipDir)
        success = [entry Extract: unzipDir];
        if (success == NO) {
            NSLog(@"%@",entry.LastErrorText);
            return;
        }

    }

    i = i + 1;
}