Sample code for 30+ languages & platforms
Visual FoxPro

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 Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loGzip
LOCAL loFileData
LOCAL lcStrBase64
LOCAL lcStrBase64MultiLine

lnSuccess = 0

* This example assumes the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.

loGzip = CreateObject('Chilkat.Gzip')

* This example will load a file into the fileData object.
* Your application might load fileData from other sources..
loFileData = CreateObject('Chilkat.BinData')
lnSuccess = loFileData.LoadFile("qa_data/xml/hamlet.xml")
IF (lnSuccess <> 1) THEN
    ? "Failed to load file."
    RELEASE loGzip
    RELEASE loFileData
    CANCEL
ENDIF

* In-place compress the contents of fileData
lnSuccess = loGzip.CompressBd(loFileData)
IF (lnSuccess <> 1) THEN
    ? loGzip.LastErrorText
    RELEASE loGzip
    RELEASE loFileData
    CANCEL
ENDIF

* Get the base64 encoded compressed data (in a single line).
lcStrBase64 = loFileData.GetEncoded("base64")
? lcStrBase64
? "--------"

* To get the base64 in multiple lines, as it might appear in MIME,
* use "base64-mime".
lcStrBase64MultiLine = loFileData.GetEncoded("base64-mime")
? lcStrBase64MultiLine

RELEASE loGzip
RELEASE loFileData