интерпретатор zlib / gzip

Приветствую, я пытаюсь проанализировать вывод алгоритма zlib (gzip) по сравнению с вводом. Определите такие вещи, как размер словаря, пары длины строки подстроки и их соответствие в исходном открытом тексте. Я использую zlib для обмена очень маленькими порциями данных (каждый размером менее 1 КБ) и хочу определить накладные расходы из словаря, процент совпадений подстрок по сравнению с открытым текстом, закодированным по словарю в результатах, и тому подобное.

После того, как быстрый поиск в Google не дал результатов, я спрашиваю здесь, прежде чем начинать заполнять исходный код zlib сообщениями отладки, чтобы получить аналогичный результат.

Есть ли для этого что-нибудь готовое?


person user17925    schedule 15.12.2010    source источник
comment
Посев zlib - хорошая идея.   -  person qdot    schedule 15.12.2010
comment
Да, это сработало довольно хорошо для одноразового решения. Но мне было бы неловко показывать изменения публично!   -  person user17925    schedule 11.02.2011


Ответы (1)


Взгляните на http://zlib.net/infgen.c.gz.

Из комментариев в коде:

 * Read a zlib, gzip, or raw deflate stream from stdin and write a defgen
 * compatible stream representing that input to stdout (though any specific
 * zlib or gzip header information will be lost).  This is based on the puff.c
 * code to decompress deflate streams.  Note that neither the zlib nor the gzip
 * trailer is checked against the uncompressed data (in fact the uncompressed
 * data is never generated) -- all that is checked is that the trailer is
 * present.
person Mark Adler    schedule 04.02.2012
comment
Привет @Mark, добро пожаловать в SO - просто примечание, это помогает дать краткое введение в то, что вы связываете, чтобы OP имел представление о том, решает ли он их проблему, и для борьбы с гниением ссылок. Я поднял некоторые из ваших вводных комментариев в этот ответ, но не стесняйтесь редактировать, чтобы улучшить, похоже, эта ссылка очень поможет OP :) - person ; 05.02.2012