Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
|
PPMD String CompressionDemonstrates string compression using PPMD. The functionality in this example is available in pre-release only:
import com.chilkatsoft.*; public class ChilkatExample { static { try { System.loadLibrary("chilkat"); } catch (UnsatisfiedLinkError e) { System.err.println("Native code library failed to load.\n" + e); System.exit(1); } } public static void main(String argv[]) { CkCompression compress = new CkCompression(); // Any string argument automatically begins a 30-day trial. boolean success; success = compress.UnlockComponent("30-day trial"); if (success != true) { System.out.println("Compression component unlock failed"); return; } compress.put_Algorithm("ppmd"); String strData; int i; // Create a long string to compress. strData = "abcdefg1122334455667788"; strData = strData + "\r\n"; for (i = 0; i <= 99; i++) { strData = strData + "abcdefg1122334455667788"; strData = strData + "\r\n"; } // Depending on the programming language, the string // may be Unicode. Tell the component to convert to // ansi (1-byte/char) prior to compression: compress.put_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.put_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: String compressedStr; compressedStr = compress.compressStringENC(strData); if (compressedStr == null ) { System.out.println(compress.lastErrorText()); return; } // Display the compressed string. // The result will be: // ec8YZ5vk9za18d0plwuV7R65em9OZge9gJXht/QAAAAAAAAAABNOZQAAKw== System.out.println(compressedStr); // Decompress back to the original: String strOriginal; strOriginal = compress.decompressStringENC(compressedStr); // Display the uncompressed original: System.out.println("--- Original ---"); System.out.println(strOriginal); } } |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2008 Chilkat Software, Inc. All Rights Reserved.