Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > Архивация файлов *.ZIP |
Автор: CDell 25.7.2008, 12:52 |
Нужно заархивировать файл/папку в zip архив. Посоветуйте библиотеку(класс по работе) и если можно, то примерчик к ней. Сейчас делаю через командную строку WinRAR'a. |
Автор: JackYF 25.7.2008, 13:15 |
zlib |
Автор: str_vadim 1.8.2008, 13:52 |
zlib) |
Автор: vinter 1.8.2008, 14:08 |
zlib |
Автор: W4FhLF 1.8.2008, 14:41 |
Какбэ не хочу выделяться, но может zlib пойдёт? |
Автор: Alexeis 1.8.2008, 14:50 |
Гм.. вообще-то zlib не сделает архив zip ![]() Добавлено через 5 минут и 10 секунд Или вот еще нагуглил ![]() http://www.codeproject.com/KB/files/zip_utils.aspx |
Автор: jonie 1.8.2008, 16:00 |
в zlib есть пример сохдающий архивы, зовется minzip |
Автор: Peter 2.8.2008, 18:42 |
Использовал http://www.codeproject.com/KB/library/LiteZip.aspx. Мне хватало. Архивация+разархивация реализована в виде lib+dll. Когда её подключал к программе, не сразу понял, что при разархивировании надо вначале нужный каталог сделать текущим (chdir). |
Автор: CDell 2.8.2008, 18:59 |
Всем спасибо. Но со zlib я так и не разобрался. Использовал http://www.codeproject.com/KB/files/zip_utils.aspx. Правдо там нет возможности архивировать всю папку. Пришлось дописывать самому(коекак, но вроде работает). Но если у кого есть исходник архивации папки на zlib то буду рад. |
Автор: Peter 11.8.2009, 11:09 |
В упомянутой выше LiteZip есть проблемы с юникодом, с установкой времени изменения для файлов. |
Автор: Peter 11.8.2009, 12:17 |
Ради эксперимента я сделал с помощью 7-zip архив .zip и сложил в него файлы, в именах которых есть "юникодные" символы (т.е. их нет в CP-1251). Распаковал с помощью LiteUnzip - с названиями файлов и временем их изменения всё в порядке. Запаковал LiteZip-ом - "юникодный" символ разбился на два (в UTF-8, что ли, перекодировался); время сдвинулось на 4 часа (не местное летнее стало, а гринвичское). Так что проблема, я полагаю, не в формате, а в библиотеке. Разбираюсь сейчас с 7-zip.dll. |
Автор: Alexeis 11.8.2009, 14:31 | ||||
Я бы так смело не утверждал проверив лишь в одном случае.
Такой архив откроют только распаковщики основанные на формате 6.3+ Например, мой не очень новый 7zip при запаковке заменил символ на нижнее подчеркивание. После обновления начал правильно сохранять, но вот опять проблема, виндовый просмотрщик на XP SP3 с обновлениями неправильно прочитал имя. Не знаю как в висте, возможно там уже нет такой проблемы. Но можешь не сомневаться, что люди у которых установлен не самый последний софт будут плеваться от того что имена файлов попорчены. |