понедельник, 4 марта 2013 г.

Сжатие данных в Qt

Вообще это всё можно рассказать в двух строках.

Библиотека Qt поддерживает зжатие данных с помощью библиотеки zlib.

QByteArray qCompress ( const QByteArray & dataint compressionLevel = -1 )


Сжимает данные. data - Массив, который необходимо сжать, compressionLevel - степень сжатия от 0 до 9. При этом чем больше цифра, тем сильнее сжатие, и тем дольше оно будет
проводиться.
Возвращает соответственно сжатые данные. Для бинарника размером 8 мб я получил сжатые данные размером 4 мб, т.е. степень сжатия ~50%

QByteArray qUncompress ( const QByteArray & data )


Извлекает данные. Возвращает распакованный массив.




1 комментарий:

  1. Хорошее дело. Я как-то умудрился пропустить этот функционал из виду и пришлось прикручивать вызов 7z через QProcess. А там, понятное дело, приходиться кучу всего проверять еще.

    ОтветитьУдалить