DataFlex
DataFlex
Gzip Compress In Memory and Base64 Encode
See more Gzip Examples
Demonstrates how to Gzip compress in-memory data and then encode the compressed data to base64.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoGzip
Variant vFileData
Handle hoFileData
String sStrBase64
String sStrBase64MultiLine
String sTemp1
Move False To iSuccess
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatGzip)) To hoGzip
If (Not(IsComObjectCreated(hoGzip))) Begin
Send CreateComObject of hoGzip
End
// This example will load a file into the fileData object.
// Your application might load fileData from other sources..
Get Create (RefClass(cComChilkatBinData)) To hoFileData
If (Not(IsComObjectCreated(hoFileData))) Begin
Send CreateComObject of hoFileData
End
Get ComLoadFile Of hoFileData "qa_data/xml/hamlet.xml" To iSuccess
If (iSuccess <> True) Begin
Showln "Failed to load file."
Procedure_Return
End
// In-place compress the contents of fileData
Get pvComObject of hoFileData to vFileData
Get ComCompressBd Of hoGzip vFileData To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoGzip To sTemp1
Showln sTemp1
Procedure_Return
End
// Get the base64 encoded compressed data (in a single line).
Get ComGetEncoded Of hoFileData "base64" To sStrBase64
Showln sStrBase64
Showln "--------"
// To get the base64 in multiple lines, as it might appear in MIME,
// use "base64-mime".
Get ComGetEncoded Of hoFileData "base64-mime" To sStrBase64MultiLine
Showln sStrBase64MultiLine
End_Procedure