Сжатие массива данных, передаваемых через сокеты - PullRequest
2 голосов
/ 14 сентября 2011

У нас есть сервер, который отправляет некоторые данные клиенту (оба написаны с использованием c ++ / MFC) с использованием сокетов Данные становятся слишком большими, и я ищу решения для их сжатия. В основном мне нужно сжать несколько массивов символов

Я не очень знаком с MFC. Я посмотрел на zlib, но мне было трудно собрать что-нибудь с моим проектом VS. Я также могу использовать CLI (я пытался использовать GZipStream и заставил его работать на C #, но когда я попробовал это на c ++, мне не удается заставить массивы CLI хорошо играть с массивами символов c ++ )

Ответы [ 3 ]

2 голосов
/ 21 сентября 2011

Является ли zlib обязательным требованием вашего проекта?В противном случае некоторые другие программы имеют более простой заголовочный файл, с которым легче работать.Например, этот (протестирован с GCC и VS VS):

int LZ4_compress (char * source, char * dest, int isize);

int LZ4_uncompress (char * source, char *dest, int osize);

Исходный код: http://code.google.com/p/lz4/

1 голос
/ 14 сентября 2011

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

Кроме того, есть парень, который обернул его (для удобства), возможно, стоит проверить это: http://www.firstobject.com/easy-zlib-c++-xml-compression.htm

1 голос
/ 14 сентября 2011

Вы можете использовать любую стороннюю библиотеку сжатия.
Также этот вопрос касается аналогичной проблемы: c ++ компрессионный байтовый массив

Какую ошибку вы получаете при попытке скомпилировать zlib.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...