Sample code for 30+ languages & platforms
B4X Requires Chilkat v11.0.0+

Compress String Feed to Base64

See more Compression Examples

This example receives incoming text data in chunks, compresses as a stream, and accumulates the compressed data in base64.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

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

Dim sbCompressedBase64 As ChilkatStringBuilder
sbCompressedBase64.Initialize

Dim compress As ChilkatCompression
compress.Initialize("compress")
compress.Algorithm = "deflate"
compress.Charset = "utf-8"
compress.EncodingMode = "base64"

compress.FirstChunk = True
compress.LastChunk = False

Dim bdCompressed As ChilkatBinData
bdCompressed.Initialize
Dim sbUncompressedChunk As ChilkatStringBuilder
sbUncompressedChunk.Initialize

Dim i As Int
For i = 0 To 24
    If i = 24 Then
        compress.LastChunk = True
    End If


    sbUncompressedChunk.Clear
    sbUncompressedChunk.AppendInt(i)
    sbUncompressedChunk.Append(": This is a line of data to be compressed..." & Chr(13) & Chr(10))

    compress.CompressSb(sbUncompressedChunk, bdCompressed)

    compress.FirstChunk = False
Next

Log("The base64 encoded compressed text:")
Log(bdCompressed.GetEncoded("base64"))

'  Decompress in one call:
Dim originalText As String = compress.DecompressStringENC(bdCompressed.GetEncoded("base64"))
Log(originalText)