Chilkat Examples

ChilkatHOMEAndroid™Classic ASPCC++C#C# WinRTDelphi ActiveXDelphi DLLVisual FoxProJavaMFCObjective-CPerlPHP ActiveXPHP ExtensionPowerShellPythonRubySQL ServerUnicode CUnicode C++Visual Basic 6.0VB.NETVB.NET WinRTVBScript

Visual FoxPro Examples

Certificates
Email Object
Encryption
FTP
HTML-to-XML/Text
Gzip
HTTP
IMAP
MHT / HTML Email
PFX/P12
Java KeyStore (JKS)
POP3
RSA Encryption
MIME
SMTP
Socket/SSL/TLS
SSH Key
SSH
SFTP
Tar Archive
XML
XMP
Zip

More Examples...
Amazon S3
Bounced Email
CSV
Diffie-Hellman
DKIM / DomainKey
NTLM

 

 

 

 

 

 

 

(Visual FoxPro) Deflate String

Compresses a string using the Deflate compression algorithm.

LOCAL loCompress
LOCAL lnSuccess
LOCAL lcStrData
LOCAL i
LOCAL lcDeflatedStr
LOCAL lcStrOriginal

loCompress = CreateObject('Chilkat.Compression')

*  Any string argument automatically begins a 30-day trial.

lnSuccess = loCompress.UnlockComponent("30-day trial")
IF (lnSuccess <> 1) THEN
    ? loCompress.LastErrorText
    QUIT
ENDIF

loCompress.Algorithm = "deflate"

*  Create a long string to deflate.
lcStrData = "abcdefg1122334455667788"
lcStrData = lcStrData + CHR(13)+CHR(10)
FOR i = 0 TO 99
    lcStrData = lcStrData + "abcdefg1122334455667788"
    lcStrData = lcStrData + CHR(13)+CHR(10)
NEXT

*  Depending on the programming language, the string
*  may be Unicode.  Tell the component to convert to
*  ansi (1-byte/char) prior to compression:
loCompress.Charset = "ansi"

*  Compressed data is binary, meaning that all byte values
*  from 0 to 255 are possible.  The result would not be
*  a printable string.  To receive a printable string (us-ascii),
*  the resultant compressed data should be encoded using
*  an encoding such as base64.  Set the EncodingMode
*  property to determine the output encoding:
*  (Valid choices are "base64", "hex", "url", and others)
loCompress.EncodingMode = "base64"

*  Note: Base64 encoding expands the compressed data by
*  4/3rds because each 3 bytes of binary data are represented
*  by 4 printable chars.  Hex, for example, doubles the output
*  size because each byte is represented by 2 printable chars.

*  Deflate the string:

lcDeflatedStr = loCompress.CompressStringENC(lcStrData)
IF (lcDeflatedStr = NULL ) THEN
    ? loCompress.LastErrorText
    QUIT
ENDIF

*  Display the deflated string.
*  The result will be:
*  S0xKTklNSzc0NDIyNjYxMTU1MzM3t7Dg5UoclRiVGJUYlRiVGJUYlRiVGJUYchIA
? lcDeflatedStr

*  Decompress back to the original:

lcStrOriginal = loCompress.DecompressStringENC(lcDeflatedStr)

*  Display the uncompressed original:
? "--- Original ---"
? lcStrOriginal
 

© 2000-2014 Chilkat Software, Inc. All Rights Reserved.