2010-12-03 50 views

回答

0

如果qUncompress要求所有的壓縮數據是在QByteArray將其解壓縮它沒有記錄。從它的wording,它似乎暗示着。我會想象加載一些大的SWF到內存中只是爲了得到頭中的幾個字節是不實際的。

如果你可以加載整個文件到內存活,只有4加載文件開始偏移轉換爲QByteArray和翻轉一4(SWF的字節順序是小端和qUncompress需要的長度將在big-endian)。從翻轉的32位整數中減去4。然後致電qUncompress

如果加載整個文件並不理想,您最好直接使用zlib中的流功能。這允許您逐個解壓縮數據。

+0

此外文件的長度被壓縮。 – Doru 2010-12-06 06:33:39