HTTP返回GZIP内容的解压及中文显示
为节省流量,大部分的网页返回内容都会压缩后再传输,如果返回头包含Content-Encoding: gzip,那么必须 进行解压才能获取正确的返回值。下面基于QT实现解压网页返回内容,并转化为中文显示。
QT里面已经集成了zlib,可以利用zlib里面的函数实现解压,使用时需要包含 zlib.h头文件。
解压函数:
QByteArray uncompressGZip(const QByteArray &data)
{
if (data.size() <= 4)
{
qWarning("gUncompress: Input data is truncated");
return QByteArray();
}
QByteArray result;
int ret;