![]()  | 
  
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
 
      (Delphi DLL) Compress and Decompress a StringDemonstrates how to compress and decompress a string. 
 uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, StringBuilder, CkByteData, Compression; ... procedure TForm1.Button1Click(Sender: TObject); var success: Boolean; sb: HCkStringBuilder; i: Integer; compress: HCkCompression; compressedBytes: HCkByteData; compressedBase64: PWideChar; decompressedString: PWideChar; begin // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. sb := CkStringBuilder_Create(); for i := 1 to 20 do begin CkStringBuilder_Append(sb,'This is the original uncompressed string.' + #13#10); end; compress := CkCompression_Create(); CkCompression_putAlgorithm(compress,'deflate'); // Indicate that the utf-8 byte representation of the string should be compressed. CkCompression_putCharset(compress,'utf-8'); compressedBytes := CkByteData_Create(); success := CkCompression_CompressString(compress,CkStringBuilder__getAsString(sb),compressedBytes); // If the compressed data is desired in string format, then get the base64 representation of the bytes. CkCompression_putEncodingMode(compress,'base64'); compressedBase64 := CkCompression__compressStringENC(compress,CkStringBuilder__getAsString(sb)); Memo1.Lines.Add('Compressed Bytes as Base64: ' + compressedBase64); // Now decompress... decompressedString := CkCompression__decompressString(compress,compressedBytes); Memo1.Lines.Add('The original string after decompressing from binary compressed data:'); Memo1.Lines.Add(decompressedString); // To decompress from Base64... CkCompression_putEncodingMode(compress,'base64'); decompressedString := CkCompression__decompressStringENC(compress,compressedBase64); Memo1.Lines.Add('The original string after decompressing from Base64:'); Memo1.Lines.Add(decompressedString); CkStringBuilder_Dispose(sb); CkCompression_Dispose(compress); CkByteData_Dispose(compressedBytes); end;  | 
  ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.