Compresses a data buffer in gzip format. The resulting zipped buffer can be unzipped with the ZipUncompressGzip function or any gzip unzipper tool. The ZipCompressGzip function uses the deflate compression algorithm.
Zip.bdh
ZipCompressGzip( in sSource : string, in nSrcLen : number, out sDest : string, in nDstLen : number optional, out nOutLen : number optional, in nCompLevel : number optional ) : boolean;
true if successful
false otherwise
| Parameter | Description |
|---|---|
| sSource | Source buffer to be compressed in gzip format. |
| nSrcLen | Length of source buffer. |
| sDest | Destination buffer used to store the compressed data. |
| nDstLen | Length of destination buffer (optional). |
| nOutLen | Number of bytes used in the destination buffer to store the compressed data (optional). |
| nCompLevel |
Level of compression. The compression level must be ZIP_COMPRESSION_DEFAULT, or between 0 and 9 (optional):
|
transaction TMain
var
sUnzipped : string;
sZipped : string;
i : number;
nUnzipped : number;
begin
nUnzipped := sizeof(sUnzipped);
for i := 1 to nUnzipped do
sUnzipped[i] := chr(ord('a') + ((i-1) mod 26));
end;
ZipCompressGzip(sUnzipped, STRING_COMPLETE, sZipped);
WriteLn("Size of unzipped buffer: " + string(Binlen(sUnzipped)));
WriteLn("Size of zipped buffer: " + string(Binlen(sZipped)));
ZipUncompressGzip(sZipped, binlen(sZipped), sUnzipped);
WriteData(sUnzipped);
end TMain;Size of unzipped buffer: 254 Size of zipped buffer: 49 abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrst