Sugiero que usted utilice ssziparchive bcoz que soporta tanto proyecto ARC
y Non ARC
.
- Añadir
SSZipArchive.h
, SSZipArchive.m
y minizip
a su proyecto.
- Agregue la última versión de la biblioteca
libz
(en este momento es libz1.2.5
) a su destino.
No necesita hacer nada con respecto a ARC
. SSZipArchive
detectará si no está usando ARC
y agrega el código de administración de memoria requerido.
Y código será la siguiente: de sólo lectura
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
// Unzipping
//If your zip is in document directory than use this code
NSString *zipPath = [documentsDirectory stringByAppendingPathComponent:@"mediadata.zip"];
//else if zip file is in bundle than use this code
NSString *zipPath = [[NSBundle mainBundle] pathForResource:@"mediadata" ofType:@"zip"];
NSString *destinationPath = [documentsDirectory stringByAppendingPathComponent:@"MediaData"];
if([SSZipArchive unzipFileAtPath:zipPath toDestination:destinationPath] != NO) {
//unzip data success
//do something
NSLog(@"Dilip Success");
}else{
NSLog(@"Dilip Error");
}
haz principal está. No puede extraer un archivo, sin embargo, puede usar un directorio local como el directorio de documentos. –