Ruby
Ruby
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 Ruby Downloads
require 'chilkat'
success = false
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
sbCompressedBase64 = Chilkat::CkStringBuilder.new()
compress = Chilkat::CkCompression.new()
compress.put_Algorithm("deflate")
compress.put_Charset("utf-8")
compress.put_EncodingMode("base64")
compress.put_FirstChunk(true)
compress.put_LastChunk(false)
bdCompressed = Chilkat::CkBinData.new()
sbUncompressedChunk = Chilkat::CkStringBuilder.new()
for i in 0 .. 24
if (i == 24)
compress.put_LastChunk(true)
end
sbUncompressedChunk.Clear()
sbUncompressedChunk.AppendInt(i)
sbUncompressedChunk.Append(": This is a line of data to be compressed...\r\n")
compress.CompressSb(sbUncompressedChunk,bdCompressed)
compress.put_FirstChunk(false)
end
print "The base64 encoded compressed text:" + "\n";
print bdCompressed.getEncoded("base64") + "\n";
# Decompress in one call:
originalText = compress.decompressStringENC(bdCompressed.getEncoded("base64"))
print originalText + "\n";