Sample code for 30+ languages & platforms
C++

Unicode Escape

Convert a string to Unicode escaped values.

Chilkat C++ Downloads

C++
#include <CkStringBuilder.h>

void ChilkatSample(void)
    {
    bool success = false;

    CkStringBuilder sb;

    const char *str = "bôn";
    const char *charset = "not_used";

    //  Unicode escape all chars using \uHHHH
    success = sb.SetString(str);
    sb.Encode("unicode-escape-all",charset);
    std::cout << sb.getAsString() << "\r\n";
    //  Output is \u0062\u00f4\u006e

    //  Unicode escape only 8bit chars using \uHHHH
    success = sb.SetString(str);
    sb.Encode("unicode-escape-8bit",charset);
    std::cout << sb.getAsString() << "\r\n";
    //  Output is b\u00f4n

    //  To use uppercase hex chars (A-F), add "-upper" to the encoding name
    success = sb.SetString(str);
    sb.Encode("unicode-escape-all-upper",charset);
    std::cout << sb.getAsString() << "\r\n";
    //  Output is \u0062\u00F4\u006E

    //  Unicode escape all chars using \u{HHHH}
    success = sb.SetString(str);
    sb.Encode("unicode-escape-all-curly-upper",charset);
    std::cout << sb.getAsString() << "\r\n";
    //  Output is \u{0062}\u{00F4}\u{006E}

    //  Unicode escape 8bit chars using HTML hex &#xH;
    success = sb.SetString(str);
    sb.Encode("unicode-escape-8bit-html-hex",charset);
    std::cout << sb.getAsString() << "\r\n";
    //  Output is b&#xf4;n

    //  Unicode escape all chars using HTML decimal &#D;
    success = sb.SetString(str);
    sb.Encode("unicode-escape-all-html-dec",charset);
    std::cout << sb.getAsString() << "\r\n";
    //  Output is &#98;&#244;&#110;

    //  Unicode escape all chars using u+HHHH
    success = sb.SetString(str);
    sb.Encode("unicode-escape-all-plus",charset);
    std::cout << sb.getAsString() << "\r\n";
    //  Output is u+0062u+00f4u+006e

    //  Unicode escape 8bit chars using angled brackets <HHHH>
    success = sb.SetString(str);
    sb.Encode("unicode-escape-8bit-angle-upper",charset);
    std::cout << sb.getAsString() << "\r\n";
    //  Output is b<00F4>n
    }