![]() |
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
PPMD String CompressionDemonstrates string compression using PPMD.
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <% set compress = Server.CreateObject("Chilkat_9_5_0.Compression") ' Any string argument automatically begins a 30-day trial. success = compress.UnlockComponent("30-day trial") If (success <> 1) Then Response.Write "<pre>" & Server.HTMLEncode("Compression component unlock failed") & "</pre>" End If compress.Algorithm = "ppmd" ' Create a long string to compress. strData = "abcdefg1122334455667788" strData = strData & vbCrLf For i = 0 To 99 strData = strData & "abcdefg1122334455667788" strData = strData & vbCrLf Next ' Depending on the programming language, the string ' may be Unicode. Tell the component to convert to ' ansi (1-byte/char) prior to compression: compress.Charset = "ansi" ' Compressed data is binary, meaning that all byte values ' from 0 to 255 are possible. The result would not be ' a printable string. To receive a printable string (us-ascii), ' the resultant compressed data should be encoded using ' an encoding such as base64. Set the EncodingMode ' property to determine the output encoding: ' (Valid choices are "base64", "hex", "url", and others) compress.EncodingMode = "base64" ' Note: Base64 encoding expands the compressed data by ' 4/3rds because each 3 bytes of binary data are represented ' by 4 printable chars. Hex, for example, doubles the output ' size because each byte is represented by 2 printable chars. ' PPMD compress the string: compressedStr = compress.CompressStringENC(strData) If (compressedStr = vbNullString ) Then Response.Write "<pre>" & Server.HTMLEncode(compress.LastErrorText) & "</pre>" End If ' Display the compressed string. ' The result will be: ' ec8YZ5vk9za18d0plwuV7R65em9OZge9gJXht/QAAAAAAAAAABNOZQAAKw== Response.Write "<pre>" & Server.HTMLEncode( compressedStr) & "</pre>" ' Decompress back to the original: strOriginal = compress.DecompressStringENC(compressedStr) ' Display the uncompressed original: Response.Write "<pre>" & Server.HTMLEncode( "--- Original ---") & "</pre>" Response.Write "<pre>" & Server.HTMLEncode( strOriginal) & "</pre>" %> </body> </html> |
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.