Я использовал ZipArchive с успехом в прошлом.
Это довольно легкий и простой в использовании, поддерживает защиту паролем, несколько файлов внутри ZIP, а также сжатие и распаковка.
Основное использование:
NSString *filepath = [[NSBundle mainBundle] pathForResource:@"ZipFileName" ofType:@"zip"];
ZipArchive *zipArchive = [[ZipArchive alloc] init];
[zipArchive UnzipOpenFile:filepath Password:@"xxxxxx"];
[zipArchive UnzipFileTo:{pathToDirectory} overWrite:YES];
[zipArchive UnzipCloseFile];
[zipArchive release];
Это для разархивирования папки / файла. Застегнуть почтовые папки одинаково легко. Чтобы сжать файл (или фодлер)
BOOL ret = [zip CreateZipFile2:l_zipfile];
// OR
BOOL ret = [zip CreateZipFile2:l_zipfile Password:@"your password"]; //
//if the Password is empty, will get the same effect as [zip CreateZipFile2:l_zipfile];
ret = [zip addFileToZip:l_photo newname:@"photo.jpg"];
if( ![zip CloseZipFile2] )
{
// error handler here
}
[zip release];
Я также слышал о ObjectiveC-Zip .