![]() |
|
|
![]()
|
|
| MuForum |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 427 Регистрация: 13.6.2007 Где: Молдова, Кишинев Репутация: 1 Всего: 4 |
Доброе время суток.
На хостинге лежит архив (.zip, .rar, .7z), необходимо с удалённо компьютера скачать определённый файл из этого архива и разархивировать на локальном компьютере. То есть, на хостинге есть Update.zip/rar/7z, в котором содержиться 8 файлов. (1, 2, 3, 4, 5, 6, 7, 8 .txt) - Мне необходимо скачать из архива только файл 2.txt и на локальном компьютере его разархивировать. P.S. -> Каким образом данную задачу можно реализовать? Через какие команды, компоненты? Это сообщение отредактировал(а) MuForum - 18.4.2011, 13:51 -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа!" (Р. Шекли) |
|||
|
||||
| ZVano |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 11.12.2006 Где: Украина, Кривой Р ог Репутация: 1 Всего: 4 |
Сам никогда этим не занимался, могу лиш помочь косвенной информацией (если не подходит, просто считай что этого сообщения нет
Инструмент для распаковки - библиотека 7-zip Сайт: http://7-zip.org.ua/ru/7z.html http://ru.wikipedia.org/wiki/7-Zip Поддерживаемые форматы: упаковка и распаковка: 7z, BZIP2 (BZ2, TB2, TBZ, TBZ2), GZIP (GZ, TGZ), TAR, ZIP, XZ; только распаковка: 001, ACE, ARJ, CAB, CHM, CPIO, DEB, DMG, FLV, ISO, JAR, LHA, LZH, LZMA, MSI, NSIS, PE, RAR, RPM, SWF, SWM, VHD, WIM, XAR, Z (TAZ); FAT, HFS, MBR, NTFS, UDF, SquashFS, CramFS SDK: http://sourceforge.net/projects/sevenzip/f...ar.bz2/download lzma920\7zFormat.txt - описывает формат архива 7-ZIP Где взять формат архивов других типов я не знаю. Голая теория: Каждый тип архивов имеет свой заголовок. 1. Нужно определить какой тип архива перед тобой. 2. Скачать байты заголовка. Разобрать их в соответствии со структурой заголовка конкретного типа архивов. 3. Определиться что за подтип архива перед тобой. Можно ли вообще распаковать один файл, или архив непрерывный. Заархивирован заголовок или нет. Запаролен архив или нет. И т.п. 4. Получить список файлов архива. Для 7zip 7z920\CPP\Common\ListFileUtils.h bool ReadNamesFromListFile(LPCWSTR fileName, UStringVector &strings, UINT codePage = CP_OEMCP); кусок для примера из 7z920\CPP\7zip\UI\Common\ArchiveCommandLine.cpp
5. Определить где находятся данные для нужного файла. Как, я ХЗ. Нужно рыть SDK. 6. Скачать кусок файла. Сформировать из заголовка и куска один файл, где недостающие данные будут забиты нулями. 7. Выполнить распаковку указаного файла. Средствами библиотеки (читай SDK, изучай пример 7z920\CPP\7zip\UI\Common\ArchiveCommandLine.cpp ) -------------------- НЕ ФЛУДИМ. Пользуемся кнопками "+" или "-" для выражения своего отношения к теме или сообщению. Гуглим "Как правильно задавать вопросы" |
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |