0

I just want to create a file with the data of unzipped file in iOS.

I am using the Objective-Zip library, and I can zip files rightly.

Now, I am trying to extract the files of this zip file.

ZipFile *unzipFile= [[ZipFile alloc] initWithFileName:filePath mode:ZipFileModeUnzip];

//Checking files inside zip 
NSArray *infos= [unzipFile listFileInZipInfos];
for (FileInZipInfo *info in infos)
    NSLog(@"Test 1: - %@ %@ %d (%d)", info.name, info.date, info.size, info.level);

[unzipFile goToFirstFileInZip];

ZipReadStream *read= [unzipFile readCurrentFileInZipWithPassword:password];

How I can pass the ZipReadStream to a NSData object? Then I would convert NSData to the right file, is not?

Thanks in advance.

Sorry, it seems to be duplicate: unzip NSData using objective zip

Community
  • 1
  • 1
mzurita
  • 690
  • 1
  • 14
  • 33

1 Answers1

2

Looking at the headers for the ZipReadStream class, it looks like there is a method readDataOfLength. It appears that you call that method repeatedly until you have all the data from the file. I would expect a method to find out the length of the unzipped file, but did not see such a method from a quick glance.

As a side-note, I've never heard of the Objective-Zip library until a few minutes ago, and I found the 'readDataOfLength:' method in less than a minute. Perhaps you should spend some time looking through the library's header and sample code?

Duncan C
  • 128,072
  • 22
  • 173
  • 272
  • That method: `readDataOfLength` doesn't appear in FlyingDolphinStudio Objective-Zip last version (it has instead `- (NSUInteger) readDataWithBuffer:(NSMutableData *)buffer;`), but I found AgileBits Objective-Zip version which has `readDataOfLength`. Thank you. – mzurita Mar 12 '14 at 10:25