Objective-Zip: хранить содержимое при распаковке файла (iOS)

Я просто хочу создать файл с данными разархивированного файла в iOS.

Я использую библиотеку Objective-Zip и могу правильно архивировать файлы.

Теперь я пытаюсь извлечь файлы из этого zip-файла.

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];

Как я могу передать ZipReadStream объекту NSData? Тогда я бы преобразовал NSData в нужный файл, не так ли?

Заранее спасибо.

Извините, похоже, дубликат: разархивируйте NSData с помощью объективного zip

1 ответ

Решение

Глядя на заголовки для класса ZipReadStream, похоже, что есть метод readDataOfLength. Похоже, что вы вызываете этот метод несколько раз, пока у вас не будут все данные из файла. Я ожидал, что метод определит длину разархивированного файла, но не увидел такого метода с первого взгляда.

Как примечание, я никогда не слышал о библиотеке Objective-Zip несколько минут назад, и я нашел метод readDataOfLength: менее чем за минуту. Возможно, вам следует потратить некоторое время на просмотр заголовка библиотеки и примера кода?

Другие вопросы по тегам