Unicode C++
Unicode C++
Ascii85 Encoding and Decoding
See more Encryption Examples
Demonstrates ascii85 encoding and decoding.Note: Requires Chilkat v9.5.0.79 or greater.
Chilkat Unicode C++ Downloads
#include <CkStringBuilderW.h>
#include <CkBinDataW.h>
void ChilkatSample(void)
{
bool success = false;
// First demonstrate encoding strings to ascii85 and back.
CkStringBuilderW sb;
success = sb.Append(L"Man is distinguished, not only by his reason, but by this singular passion from other animals, which is a lust of the mind, that by a perseverance of delight in the continued and indefatigable generation of knowledge, exceeds the short vehemence of any carnal pleasure.");
const wchar_t *encodedAscii85 = sb.getEncoded(L"ascii85",L"utf-8");
wprintf(L"%s\n",encodedAscii85);
// Result is: 9jqo^BlbD-BleB1DJ+*+F(f,q/0JhKF<GL>Cj@.4 ... DII?(E,9)oF*2M7/c
// Decode back to the original:
sb.Clear();
sb.Append(encodedAscii85);
success = sb.Decode(L"ascii85",L"utf-8");
wprintf(L"Original:\n");
wprintf(L"%s\n",sb.getAsString());
// ---- Now encode binary data to ascii85 ----
CkBinDataW bd;
success = bd.LoadFile(L"qa_data/jpg/starfish20.jpg");
encodedAscii85 = bd.getEncoded(L"ascii85");
wprintf(L"%s\n",encodedAscii85);
// Result is: s4IA0!"_al8O`[\!<E0k!([(is8E!F7VQ[M+Eqj?FED)3+C]U=6"Fn ...
// Decode...
bd.Clear();
bd.AppendEncoded(encodedAscii85,L"ascii85");
success = bd.WriteFile(L"qa_output/starfish20.jpg");
}