![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java JavaScript 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
(Chilkat2-Python) Compressing StringBuilder Data Using CompressSb (Single Call and Chunked)See more Compression ExamplesThis example demonstrates how to compress text stored in aStringBuilder using the CompressSb method in two ways:
The example shows how compressed output is appended to a Key Points
import sys import chilkat2 success = False # This example assumes the Chilkat API has already been unlocked. # See Global Unlock Sample for sample code. compress = chilkat2.Compression() compress.Algorithm = "zlib" # ================================================================ # 1) Single-call compression (entire data in one call) # ================================================================ sb = chilkat2.StringBuilder() sb.Append("The quick brown fox jumps over the lazy dog. ") sb.Append("This is a simple example using CompressSb.") bdCompressed = chilkat2.BinData() # When both FirstChunk and LastChunk are true (the defaults), # the entire compression happens in a single call. compress.FirstChunk = True compress.LastChunk = True success = compress.CompressSb(sb,bdCompressed) if (success == False): print(compress.LastErrorText) sys.exit() compressedBase64 = bdCompressed.GetEncoded("base64") print("Single-call compressed (base64):") print(compressedBase64) # ================================================================ # 2) Chunked compression using FirstChunk / LastChunk # ================================================================ bdChunkedOut = chilkat2.BinData() # First chunk compress.FirstChunk = True compress.LastChunk = False sbPart = chilkat2.StringBuilder() sbPart.Append("The quick brown fox ") success = compress.CompressSb(sbPart,bdChunkedOut) if (success == False): print(compress.LastErrorText) sys.exit() # Middle chunk compress.FirstChunk = False compress.LastChunk = False sbPart.Clear() sbPart.Append("jumps over the lazy dog. ") success = compress.CompressSb(sbPart,bdChunkedOut) if (success == False): print(compress.LastErrorText) sys.exit() # Final chunk compress.FirstChunk = False compress.LastChunk = True sbPart.Clear() sbPart.Append("This is a chunked CompressSb example.") success = compress.CompressSb(sbPart,bdChunkedOut) if (success == False): print(compress.LastErrorText) sys.exit() chunkedBase64 = bdChunkedOut.GetEncoded("base64") print("Chunked compressed (base64):") print(chunkedBase64) # ================================================================ # 3) Decompress to verify correctness # ================================================================ sbDecompressed = chilkat2.StringBuilder() # Decompress in a single call (entire data already assembled) compress.FirstChunk = True compress.LastChunk = True success = compress.DecompressSb(bdChunkedOut,sbDecompressed) if (success == False): print(compress.LastErrorText) sys.exit() print("Decompressed text:") print(sbDecompressed.GetAsString()) |
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.