I am using objective zip in a project to unzip and store files to documents directory. Its working fine with iOS 5.0 and below versions. Working fine with 5.1 Simulator. But when working on 5.1 device, only a few files are unzipped. Nothing else is shown in the folder. below is the code used for unzipping and storage.
for (NSString *file in fileArray) {
// Get the file info/name, prepare the target name/path
ZipReadStream *readStream = [unzipFile readCurrentFileInZip];
FileInZipInfo *fileInfo = [unzipFile getCurrentFileInZipInfo];
fileNameString = [NSString stringWithFormat:@"%@",[fileInfo name]];
NSLog(@"fileNameString %@",fileNameString);
NSString *DirName = [targetFolder stringByAppendingPathComponent:moduleName];
NSLog(@"targetFolder %@",targetFolder);
NSLog(@"DirName %@",DirName);
NSLog(@"fileNameString %@",fileNameString);
if (![fileManager fileExistsAtPath:DirName isDirectory:nil]) {
[fileManager createDirectoryAtPath:DirName attributes:nil];
NSLog(@"created directory %@", DirName);
}
NSLog(@"fileNameString %@",fileNameString);
NSString *unzipFilePath = [DirName stringByAppendingPathComponent:fileNameString];
NSLog(@"unzipFilePath-- %@",unzipFilePath);
// Create a file handle for writing the unzipped file contents
if (![fileManager fileExistsAtPath:unzipFilePath]) {
NSString *dir = unzipFilePath;//[unzipFilePath stringByDeletingLastPathComponent];
if ([[fileNameString pathExtension] isEqualToString:@""]) {
[fileManager createDirectoryAtPath:dir attributes:nil];
NSLog(@"created directory %@", dir);
}
[fileManager createFileAtPath:unzipFilePath contents:nil attributes:nil];
}
fileHandle = [NSFileHandle fileHandleForWritingAtPath:unzipFilePath];
// Read-then-write buffered loop to conserve memory
do {
// Reset buffer length
[unzipBuffer setLength:BUFFER_SIZE];
// Expand next chunk of bytes
int bytesRead = [readStream readDataWithBuffer:unzipBuffer];
if (bytesRead > 0) {
// Write what we have read
[unzipBuffer setLength:bytesRead];
[fileHandle writeData:unzipBuffer];
} else
break;
} while (YES);
[readStream finishedReading];
// NOTE: Disable iCloud backup for unzipped file if applicable here!
/*...*/
//[fileHandle writeData:unZipped];
[fileHandle closeFile];
[unzipFile goToNextFileInZip];
}
[unzipFile close]; // Be sure to also manage your memory manually if not using ARC!
// Also delete the zip file here to conserve disk space if applicable!
[recievedData release];
NSLog(@"Delete -- %@", documentsDirectory);
[fileManager removeItemAtPath:documentsDirectory error:nil];
return YES;
}
Please help ! ! !
thanks in Advance
Use have the following method for unzipping a zip file using Objective-zip. This works fine under iOS 4.3 through 6.0 (and probably earlier and later too). The ‘filename’ parameter is the full path to the zip file.