Название: Посоветуйте либу для работы с zip архивами Отправлено: Berberis от Март 10, 2009, 09:20 Собственно вопрос в теме поста.
- Желательно (но не обязательно) библиотека должна быть Qt-совместимой - Основоное требование кроссплатформенность (или хотя бы поддержка Win и Mac) - LGPL или любая другая которая может быть использована в проекте с закрытым исходным кодом Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: spirit от Март 10, 2009, 09:27 так с кьюти уже идет архиватор, QTDIR/src/3rdparty/zlib.
см. функции qCompress/qUncompress. Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: Berberis от Март 10, 2009, 09:39 qCompress/qUncompress это АПИ для сжатия фактических данных. zip архивы отличаются наличием в них структуры. Например, zip архив может содержать структуру поддиректорий довольно высокой вложенности. Это все необходимо обрабатывать. Тоесть различать где файлы, где папки, получать иформацию о этих файлах и папках и так далее. Следующая проблема это метод сжатия. qCompress/qUncompress поддреживает только один. В zip архивах насколько я понял сжатие может быть по нескольким методам.
Что касается самой zlib, вот цитата с русскоязычного сайта (ссылка размещена на zlib.net, официального сайта zlib) посвященного работе с zlib: Библиотека сжатия 'zlib' предоставляет функции компрессии и декомпрессии в памяти, включая проверку целостности несжатых данных. Эта версия библиотеки поддерживает только один метод сжатия (дефляцию), в последствии другие алгоритмы будут добавлены с тем же потоковым интерфейсом. Библиотека также поддерживает чтение и запись файлов в формате gzip (.gz) с интерфейсом похожим на используемый в stdio. Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: Khs от Март 10, 2009, 09:59 А что мешает самому реализовать алгоритмы сжатия данных? Правда на это уйдет намного больше времени нежели чем заюзать либу :\
Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: spirit от Март 10, 2009, 10:05 а этот архиватор не подходит QuaZIP (http://quazip.sourceforge.net/index.html)
Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: Berberis от Март 10, 2009, 10:16 А что мешает самому реализовать алгоритмы сжатия данных? Правда на это уйдет намного больше времени нежели чем заюзать либу :\ Как вы правильно сказали мешает только время (равно деньги заказчиков) которое нужно затратить на написание. Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: Berberis от Март 10, 2009, 10:18 а этот архиватор не подходит QuaZIP (http://quazip.sourceforge.net/index.html) Спасибо за ссылку. Нет не подходит по следующей причине: данная либа является враппером для minizip которую я уже использую в своем проекте. Фактически я и сам в проекте сделал этот враппер. minizip мне не подходит потому что она не поддерживает поддиректории в zip архивах Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: BRE от Март 10, 2009, 10:22 Как вы правильно сказали мешает только время (равно деньги заказчиков) которое нужно затратить на написание. [offtop]время == деньги заказчика; мешает время == мешают деньги заказчика; Альтруизм? ;) ;D [/offtop] Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: lex_newton от Март 10, 2009, 10:48 А что мешает взять консольный архиватор zip? зачем изобретать велосипед?
а если хочется велосипед - то можно без особого труда переработать этот же самый архиватор... т.к. на сколько я понимаю задача стоит в просто сжатии обычных файлов Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: Berberis от Март 10, 2009, 11:02 А что мешает взять консольный архиватор zip? зачем изобретать велосипед? а если хочется велосипед - то можно без особого труда переработать этот же самый архиватор... т.к. на сколько я понимаю задача стоит в просто сжатии обычных файлов Что имеется в виду: запускать его как процесс или переработать исходники чтобы использовать их в проекте ? Если первое - то мое личное мнение что это плохое решение использовать таким образом в С++ программах. То что вы предлагаете находит хорошее применение в скриптовых языках таких как bash или python, но не в С++ программах. К тому же лицензионные ограничения могут припятствовать распространению консольной утилиты в исталляционном пакете Если второе, опять таки лицензии + время на адаптацию Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: Berberis от Март 10, 2009, 11:03 Как вы правильно сказали мешает только время (равно деньги заказчиков) которое нужно затратить на написание. [offtop]время == деньги заказчика; мешает время == мешают деньги заказчика; Альтруизм? ;) ;D [/offtop] Так уж повелось в некоторых развитых странах что люди каждый час считают :) Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: lex_newton от Март 10, 2009, 11:14 Цитировать Что имеется в виду: запускать его как процесс или переработать исходники чтобы использовать их в проекте ? и то и другое. на выбор ;)Цитировать Если первое - то мое личное мнение что это плохое решение использовать таким образом в С++ программах. То что вы предлагаете находит хорошее применение в скриптовых языках таких как bash или python, но не в С++ программах. а как же любая известная вам IDE ? :) неужели она имеет встроенный компилятор или дебагер?да и других примеров навалом. Но использовать или нет - это уже решает сам разработчик. все от задачи зависит. Цитировать К тому же лицензионные ограничения могут припятствовать распространению консольной утилиты в исталляционном пакете Тогда так и говорите, что вы хотите LGPL а не:Если второе, опять таки лицензии + время на адаптацию - Желательно по не коммерческой лицензии Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: BRE от Март 10, 2009, 11:16 Извиняюсь за offtop.
Так уж повелось в некоторых развитых странах что люди каждый час считают :) Я про то, что время может мешать, а деньги заказчика - нет (в любой стране мира). ;)Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: lex_newton от Март 10, 2009, 11:34 Berberis
может вам вот это подойдет? http://zziplib.sourceforge.net/ Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: Berberis от Март 10, 2009, 12:05 Цитировать К тому же лицензионные ограничения могут припятствовать распространению консольной утилиты в исталляционном пакете Тогда так и говорите, что вы хотите LGPL а не:Если второе, опять таки лицензии + время на адаптацию - Желательно по не коммерческой лицензии Да. Правильно вы сказали LGPL или любая другая которая может быть использована в проекте с закрытым исходным кодом Название: Re: Посоветуйте либу для работы с zip архивами Отправлено: Berberis от Март 10, 2009, 12:12 Berberis может вам вот это подойдет? http://zziplib.sourceforge.net/ Спасибо, попробую. Хотел бы пояснить что я собственно ждал постов от людей которые реально юзали те либы которые они предлагают и что они могут утверждать что это действительно хорошие решения и в частности удовлетворяют тем требованиям что я написал. В приципе погуглить я бы и сам мог, но пока не нашел действительно хороших библиотек которые к тому же продолжают поддерживаться. В любом случае спасибо народу который откликнулся за помощь |