![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Ruby) Compress Text Feed to BinaryThis example receives incoming text data in chunks, compresses as a stream, and accumulates the compressed binary data. Note: This example requires Chilkat v11.0.0 or greater.
require 'chilkat' success = false # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. bdCompressed = Chilkat::CkBinData.new() compress = Chilkat::CkCompression.new() compress.put_Algorithm("deflate") compress.put_Charset("utf-8") sbUncompressedChunk = Chilkat::CkStringBuilder.new() compress.put_FirstChunk(true) compress.put_LastChunk(false) 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 # Show the compressed data in hex format: print "The hex encoded compressed text:" + "\n"; print bdCompressed.getEncoded("hex") + "\n"; # Now decompress in one call. It is important to set both FirstChunk and LastChunk = true bdDecompressed = Chilkat::CkBinData.new() compress.put_FirstChunk(true) compress.put_LastChunk(true) success = compress.DecompressBd2(bdCompressed,bdDecompressed) if (success == false) print compress.lastErrorText() + "\n"; exit end originalText = bdDecompressed.getString("utf-8") print originalText + "\n"; |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.