Вниз
Скачать: CL | DM;

Еще раз о Zlib   Найти похожие ветки 

 
SergP ©   (2004-04-17 15:46) [0]

Порылся в инете в поисках чего-нить про Zlib. Вобщем нашел как сжимать и разжимать данные. (Юзаю процедуру DecompressBuf() для "разжимания"). Вобщем все работает нормально. Но вот проблема в том что метод сжатия там видимо не имеет ничего общего с ZIP(gzip). Т.е. данные сжимаемые CompressBuf с помощью DecompressBuf разжимаются нормально. Но данные сжатые gzip"ом не хотят разжиматься.
Можно ли все-таки использовать Zlib для распаковки данных сжатых gzip"ом, или я напрасно пытаюсь с ним разобраться?


 
@Ujin ©   (2004-04-17 15:50) [1]

Поищи TVCLZip (TVCLUnzip)


 
VMcL ©   (2004-04-17 15:54) [2]

>>SergP ©  (17.04.04 15:46)

Zlib - это тип компрессии данных, а ZIP - это формат архива. Не надо путать. Если к данным, упакованным zlib"ом, добавить соответствующие заголовки, то можно получить файл в формате ZIP.


 
SergP ©   (2004-04-17 16:07) [3]

>@Ujin ©   (17.04.04 15:50)
>Поищи TVCLZip (TVCLUnzip)

Ты меня не понял. Есть у меня TVCLZip. Но хочу все же по возможности обойтись стандартными библиотеками.
Если с Zlib так и ничего не получится, то уже тогда буду юзать TVCLZip.


 
@Ujin ©   (2004-04-17 16:10) [4]

to SergP:
А какая тебе разница? Так используешь run-time библиотеку, а так используешь библиотеку Windows для сжатия данных. Метод сжатия один и тотже...


 
SergP ©   (2004-04-17 16:14) [5]

>VMcL ©   (17.04.04 15:54)

Под Zlib я имел ввиду название библиотеки.

>Если к данным, упакованным zlib"ом, добавить соответствующие заголовки,
>то можно получить файл в формате ZIP.

А мне нужно распаковать данные упакованые gzip"ом. Значит как я понял я вначале должен что-то сделать с этими данными, а потом разжимать с помощью ZLIB.
Поэтому подскажи что нужно сделать..
И если можно поконкретнее об этих заголовках.
Просьба только не ссылаться на нерусскоязычные ресурсы.


 
SergP ©   (2004-04-17 16:19) [6]

> @Ujin ©   (17.04.04 16:10)

Разница в том если дам исходники другому человеку, или сам буду работать с ними на другой машине, то не придется устанавливать везде эти библиотеки.


 
VMcL ©   (2004-04-17 16:21) [7]

>>SergP ©  (17.04.04 16:14) [5]

http://www.faqs.org/rfcs/rfc1950.html
http://www.faqs.org/rfcs/rfc1952.html

>Просьба только не ссылаться на нерусскоязычные ресурсы.
Моё дело предложить.


 
@Ujin ©   (2004-04-17 16:23) [8]

Структуры заголовков, которые тебе нужны какраз и описаны в юнитах TVCLZip..:) И если ты станешь культурно их добавлять при запаковке методами ZLib - получить подобный пакет, но только без самого алгоритма сжатия :)


 
nikkie ©   (2004-04-17 16:27) [9]

в свое время я пользовался COM-объектом SAWZip, который использует zlib.
исходники доступны, но на VC/ATL.
http://home.tiscali.be/franky.braem17/
как я понимаю, для чтения заголовков мужик отталкивался от примера на VC/MFC
http://www.codeproject.com/cpp/zip.asp

извини, что не паскаль и не по-русски :)


 
SergP ©   (2004-04-17 18:37) [10]

Вот блин... Решил пока забросить Zlib и поюзать TVCLUnZip (а то на разбирательство с этим уйдет много времени). Все равно проблема:

Там есть функция UnZipToStream для распаковки файла в поток. А мне нужно распаковать строку в строку. Проблема возникает именно с тем что придется сохранять свою строку в файл, а потом его распаковывать. Как обойтись без создания файла?


 
VMcL ©   (2004-04-19 10:26) [11]

>>SergP ©  (17.04.04 18:37) [10]

>Как обойтись без создания файла?
TMemoryStream
?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.027 c
14-1082074235
Мазут Береговой
2004-04-16 04:10
2004.04.11
По поводу съёмки полнометражных фильмов....


1-1082350586
Denizzz
2004-04-19 08:56
2004.04.11
StringGrid - выравнивание чисел по правому краю


3-1081580315
Алексей Комлев
2004-04-10 10:58
2004.04.11
Подскажите SQL запрос


14-1079511122
Gero
2004-03-17 11:12
2004.04.11
В сиднейском аэропорту "обмяк" самолёт :)


1-1082456276
Th
2004-04-20 14:17
2004.04.11
Delphi-реализация unix-ф-ции Crypt() (алгоритм DES)




   Наверх