Xojo Plugin
Xojo Plugin
Compress Text Feed to Binary
See more Compression Examples
This example receives incoming text data in chunks, compresses as a stream, and accumulates the compressed binary data.Chilkat Xojo Plugin Downloads
Dim success As Boolean
success = False
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Dim bdCompressed As New Chilkat.BinData
Dim compress As New Chilkat.Compression
compress.Algorithm = "deflate"
compress.Charset = "utf-8"
Dim sbUncompressedChunk As New Chilkat.StringBuilder
compress.FirstChunk = True
compress.LastChunk = False
Dim i As Int32
For i = 0 To 24
If (i = 24) Then
compress.LastChunk = True
End If
sbUncompressedChunk.Clear
success = sbUncompressedChunk.AppendInt(i)
success = sbUncompressedChunk.Append(": This is a line of data to be compressed..." + EndOfLine.Windows)
success = compress.CompressSb(sbUncompressedChunk,bdCompressed)
compress.FirstChunk = False
Next
// Show the compressed data in hex format:
System.DebugLog("The hex encoded compressed text:")
System.DebugLog(bdCompressed.GetEncoded("hex"))
// Now decompress in one call. It is important to set both FirstChunk and LastChunk = True
Dim bdDecompressed As New Chilkat.BinData
compress.FirstChunk = True
compress.LastChunk = True
success = compress.DecompressBd2(bdCompressed,bdDecompressed)
If (success = False) Then
System.DebugLog(compress.LastErrorText)
Return
End If
Dim originalText As String
originalText = bdDecompressed.GetString("utf-8")
System.DebugLog(originalText)