| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Работа с архивами |
| Автор: LED 29.2.2008, 21:47 |
| Здравствуйте Встала проблема загрузки данных, в моем случае сложных конфигураций(куча текстовичков, картинок ит.п., раскиданных по сложной структуре папок), из архива (мне не важно какого) при выполнении программы. Посоветуйте наиболее удобный для этого путь. (Может воспользоваться библиотекой, к примеру, zlib.dll?? При этом в итоге надо получить возможность лазания по архиву, как по обычной папке.) Или может есть другой путь? |
| Автор: jonie 29.2.2008, 23:16 |
| наиболее удобный разработать модель абстрактную (интерфейсы и т.п.), а потом прикрутить любой вид архивов на нее (см. как например работает винда с zip архивами). Кстати можно виндой и воспользоваться (если винда). Иначе поискать в гугле - таких "архивных" классов много. |
| Автор: LED 29.2.2008, 23:26 |
| Вот об этом именно я и думал, только вот никак не могу найти нормальных спецификаций на туже zlib.dll Насчет виндой воспользоваться - может подскажешь как можно влесть в архив |
| Автор: jonie 1.3.2008, 00:47 |
| чет типа IStorage (сам я не пользовал, не уверен) |
| Автор: prof_GCC 1.3.2008, 09:41 |
| Алгоритмы архивации давольно сложны, поэтому я бы не стал лезть в это, просто пользуй готовые либы |
| Автор: LED 1.3.2008, 17:13 |
| 2 jonie: IStorage попробую подюзать 2 prof_GCC: я и не собираюсь сам писать алгоритм архивации, спецификации на функции нужны чтобы знать как их использовать (аргументы, что делает и т.п.) p.s. может кто знает что есть multivolume zip архив? |
| Автор: xvr 3.3.2008, 12:55 | ||
www.zlib.org. В архиве есть папка contrib/minizip - ZIP упаковка и распаковка |
| Автор: LED 3.3.2008, 14:33 | ||
2 xvr: посмтрел unzip.h, наткнулся на следующее:
Что такое Multi volume ZipFile (span)? |
| Автор: bsa 3.3.2008, 15:09 | ||
Это многотомный архив. Т.е. когда у тебя архив разбит на несколько файлов (например, чтобы перенести данные объемом 1 гиг в зипе с помощью стандартных CD болванок, нужно создать многотомный архив, каждый том которого не более 650MB). |
| Автор: Nuzur 3.3.2008, 18:43 |
| LED, А почему бы просто в лоб не решить? Взять любую либу архивную, распаковать во временную директорию и так уже плясать с ним. |
| Автор: andrew_121 6.3.2008, 16:04 |
| Ну помочь тебе что-ли ??? Щас подумаю... Есть у меня то что тебе нужно, сам писал... Давно это было... |
| Автор: LED 6.3.2008, 17:49 |
| 2 bsa: спасибо за инфу 2 Nuzur: была такая мысль, только вот решение не сильно изящно выглядит 2 andrew_121: буду очень благодарен за экзамплы |
| Автор: andrew_121 6.3.2008, 18:10 |
| Щас, они у меня с проектом связаны, нужно отодрать зависимости, постараюсь сегодня, не обещаю. |
| Автор: andrew_121 7.3.2008, 08:06 | ||
| Вот, не то о чем я говорил, зато работает (Проверенно Nullsoft Inc.) Сжатие добавишь в ф-цию
Удачи... |