Добавлять файлы в ZIP-архив?

#delphi #zip #archive

#delphi #zip #Архив

Вопрос:

Какой компонент или метод можно использовать для указания списка имен файлов, а затем заархивировать их в один архив?

Мне не нужны расширенные функции или что-то еще на самом деле, но если бы я мог добавить некоторые имена файлов, например, в stringlist, а затем поместить эти файлы в ZIP, это было бы неплохо.

Я пробовал искать несколько компонентов, но не уверен, какие из них использовать.

Спасибо

Ответ №1:

В дополнение к VCLZip, о котором упоминал Крис, на SourceForge бесплатно доступен Abbrevia (один из старых пакетов TurboPower). Если вам нужны версии Delphi 2010 / XE, вы можете найти их на SongBeamer (если изменения еще не были внесены в дерево SF). Как я был хорошо проинформирован в комментариях к моему ответу, изменения D2010 / XE (а также множество исправлений ошибок и новых функций) были добавлены в проект в SF, поэтому версия SongBeamer больше не нужна.

Комментарии:

1. Крейг Питерсон обновил Abbrevia в главном репозитории и содержит несколько исправлений ошибок. Он работает с Delphi XE «из коробки», больше не нужно переходить на SongBeamer. В нем есть проблемы, которые были решены Крейгом.

2. @Robert: Я не был уверен, что он уже создал основное хранилище; спасибо за разъяснение. Мне придется обновить здесь, чтобы исправить эти ошибки.

3. @Ken: У меня были изменения в SongBeamer в официальном выпуске уже больше года. В марте была выпущена Abbrevia 4, в которой добавлена поддержка распаковки большинства новых методов сжатия zipx, архивов bzip2 и tar-файлов, содержащих длинные имена файлов. Магистраль svn также включает поддержку zip64 (> 4 ГБ), более стабильное разделение / охват и компоненты treeview / listview, которые работают вместе, как WinZip.

4. @Craig Peterson: Я некоторое время не обновлял Abbrevia; я использую ее в паре довольно стабильных проектов. Однако теперь, когда я знаю о количестве изменений, мне придется получать обновленные версии из репозитория. Спасибо за подробную информацию (и вашу работу над проектом).

Ответ №2:

VCLZip хорош, довольно популярен. http://vclzip.bizland.com / IIRC, в нем есть хорошая документация и примеры, которые помогут вам быстро начать.

Ответ №3:

Я иногда использовал ZipMaster, и он работает хорошо.

С уважением.