Utility class for zipping and unzipping files on iOS and Mac
Switch branches/tags
Pull request Compare This branch is 484 commits behind ZipArchive:master.
Latest commit 3f5a7b3 Jul 10, 2012 @soffes soffes Merge pull request #28 from nivektric/master
Change clean_path to preserve_paths in podspec to pass validation
Permalink
Failed to load latest commit information.
Tests
minizip
.gitignore
Changelog.markdown
LICENSE Bump license year and add podspec Jun 2, 2012
Readme.markdown
SSZipArchive.h Improve unzipping progress delegate May 8, 2012
SSZipArchive.m
SSZipArchive.podspec

Readme.markdown

SSZipArchive

SSZipArchive is a simple utility class for zipping and unzipping files. Features:

  • Unzipping zip files
  • Unzipping password protected zip files
  • Creating zip files
  • Appending to zip files
  • Zipping files
  • Zipping NSData with a filename
  • Works in ARC and non-ARC projects

Adding to your project

  1. Add SSZipArchive.h, SSZipArchive.m, and minizip to your project.
  2. Add the libz library to your target

You don't need to do anything regarding ARC. SSZipArchive will detect if you're not using ARC and add the required memory management code.

Usage

// Unzipping
NSString *zipPath = @"path_to_your_zip_file";
NSString *destinationPath = @"path_to_the_folder_where_you_want_it_unzipped";
[SSZipArchive unzipFileAtPath:zipPath toDestination:destinationPath];

// Zipping
NSString *zippedPath = @"path_where_you_want_the_file_created";
NSArray *inputPaths = [NSArray arrayWithObjects:
                       [[NSBundle mainBundle] pathForResource:@"photo1" ofType:@"jpg"],
                       [[NSBundle mainBundle] pathForResource:@"photo2" ofType:@"jpg"]
                       nil];
[SSZipArchive createZipFileAtPath:zippedPath withFilesAtPaths:inputPaths];

License

SSZipArchive is licensed under the MIT license. A slightly modified version of Minizip 1.1 is also included and is licensed under the Zlib license.

Thanks

Thanks aish for creating ZipArchive which SSZipArchive is based on, Johnnie Walker (@randomsequence) for implementing creation support, and John Engelhart (@johnezang) for all his amazing help along the way.