Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Utility class for zipping and unzipping files on iOS and Mac
C Objective-C
Branch: master

This branch is 181 commits behind ZipArchive:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
Tests
minizip
.gitignore
Changelog.markdown
LICENSE
Readme.markdown
SSZipArchive.h
SSZipArchive.m

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.

Something went wrong with that request. Please try again.