Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(MFC) Compress Bytes to Base64 (or any other encoding)Compresses bytes to base64 or any other encoding. Also decompress to return the original.
#include <CkBinData.h> #include <CkCompression.h> #include <CkByteData.h> void ChilkatSample(void) { CkString strOut; // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. bool success; // First create some binary data to compress. CkBinData binData; int i; for (i = 1; i <= 16; i++) { binData.AppendEncoded("000102030405060708090A0B0C0D0E0F","hex"); } CkCompression compress; compress.put_Algorithm("deflate"); compress.put_EncodingMode("base64"); CkByteData uncompressedBytes; success = binData.GetBinary(uncompressedBytes); // Compress and return the compressed bytes in base64 format. const char *compressedBase64 = compress.compressBytesENC(uncompressedBytes); strOut.append("compressed and base64 encoded: "); strOut.append(compressedBase64); strOut.append("\r\n"); // Compress and return in hex format: compress.put_EncodingMode("hex"); const char *compressedHex = compress.compressBytesENC(uncompressedBytes); strOut.append("compressed and hex encoded: "); strOut.append(compressedHex); strOut.append("\r\n"); // Now decompress.. CkBinData binData2; // Decompress the base64.. compress.put_EncodingMode("base64"); success = compress.DecompressBytesENC(compressedBase64,uncompressedBytes); binData2.AppendBinary(uncompressedBytes); // Show the uncompressed bytes in hex format: strOut.append(binData2.getEncoded("hex")); strOut.append("\r\n"); strOut.append("--"); strOut.append("\r\n"); // Decompress the hex.. compress.put_EncodingMode("hex"); success = compress.DecompressBytesENC(compressedHex,uncompressedBytes); binData2.Clear(); binData2.AppendBinary(uncompressedBytes); // Show the uncompressed bytes in hex format: strOut.append(binData2.getEncoded("hex")); strOut.append("\r\n"); strOut.append("--"); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); } |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.