, , VB , qUncompress VB, , ++ qUncompress.
Mike G VB. ++, : QByteArray, zlib uncompress . Qt qCompress qUncompress (corelib/tools/qbytearray.cpp) .
qCompress (nbytes) bazip, :
bazip[0] = (nbytes & 0xff000000) >> 24;
bazip[1] = (nbytes & 0x00ff0000) >> 16;
bazip[2] = (nbytes & 0x0000ff00) >> 8;
bazip[3] = (nbytes & 0x000000ff);
bazip - QByteArray
, uncompress , qUncompress
baunzip.resize(len);
res = ::uncompress((uchar*)baunzip.data(), &len,
(uchar*)data+4, nbytes-4);
where baunzip is a QByteArray. In your case, you will lose +4 and -4, since your data does not have a length previous to this.
source
share