Разархивируйте NSData без временного файла - PullRequest
11 голосов
/ 13 ноября 2009

Я нашел пару библиотек ( LiteZip и ZipArchive ), которые позволяют разархивировать файлы на iPhone. Но оба они требуют ввода в виде файла. Существует ли библиотека, которая позволяет напрямую разархивировать NSData, содержащую zip-архивированные данные, без записи во временный файл?
Я пытался принять упомянутые выше библиотеки для этого, но пока безуспешно.

Ответы [ 2 ]

1 голос
/ 13 ноября 2009

В этом ответе на этом вопросе , я указываю на категорию вики CocoaDev для NSData , которая добавляет поддержку zip / unzip для этого класса. Это позволит вам сделать это полностью в памяти.

0 голосов
/ 13 ноября 2009

Насколько я понимаю, в формате zip файлы хранятся отдельно, и каждый сохраненный файл сжимается с использованием алгоритма сжатия (обычно это алгоритм DEFLATE).

Если вас интересует только сжатие данных, сжатых с использованием алгоритма DEFLATE, вы можете использовать это zlib дополнение к NSData из Google Toolbox For Mac
Для этого не нужны временные файлы.

...