Sample code for 30+ languages & platforms
Unicode C++

Demonstrate Binary Data Encoding Methods

Demonstrates binary data encoding methods.

Note: This example requires Chilkat v9.5.0.64 or later.

Chilkat Unicode C++ Downloads

Unicode C++
#include <CkBinDataW.h>
#include <CkStringBuilderW.h>

void ChilkatSample(void)
    {
    CkBinDataW binData;

    //  Append 10 bytes: 00, 01, 02, 03, 04, 05, 06, 07, 08, 09
    binData.AppendEncoded(L"00010203040506070809",L"hex");

    //  Show that binData contains 10 bytes.
    wprintf(L"num bytes = %d\n",binData.get_NumBytes());

    //  Get as base64
    wprintf(L"base64: %s\n",binData.getEncoded(L"base64"));

    //  Get a chunk of the binary data.
    //  The 1st byte is at index 0.
    //  The output should be "02030405"
    int offset = 2;
    int numBytes = 4;
    wprintf(L"chunk: %s\n",binData.getEncodedChunk(offset,numBytes,L"hex"));

    //  Copy the bytes to a StringBuilder using the base64url encoding
    CkStringBuilderW sb;
    binData.GetEncodedSb(L"base64url",sb);
    wprintf(L"base64url: %s\n",sb.getAsString());

    //  Remove a chunk from the binary data
    offset = 2;
    numBytes = 4;
    binData.RemoveChunk(offset,numBytes);
    //  The bytes remaining are 00,01,06,07,08,and 09
    wprintf(L"after removing chunk: %s\n",binData.getEncoded(L"hex"));
    }