Sample code for 30+ languages & platforms
C

JSON Escape and Unescape a String

Demonstrates how to JSON escape or unescape a string.

Chilkat C Downloads

C
#include <C_CkStringBuilder.h>

void ChilkatSample(void)
    {
    HCkStringBuilder sb;

    sb = CkStringBuilder_Create();

    CkStringBuilder_Append(sb,"backslash: \\\\, A: \\u0041");
    printf("%s\n",CkStringBuilder_getAsString(sb));

    //  The output is:
    //     backslash: \\, A: \u0041

    //  The keyword "json" can be used
    //  to escape and unescape.  To escape is to encode.  To unescape is to decode.

    //  Unescape (decode) the string in sb.
    CkStringBuilder_Decode(sb,"json","utf-8");
    printf("%s\n",CkStringBuilder_getAsString(sb));

    //  After JSON unescaping:
    //     backslash: \, A: A

    //  Now JSON escape the string.
    CkStringBuilder_Encode(sb,"json","utf-8");
    printf("%s\n",CkStringBuilder_getAsString(sb));

    //  After JSON escaping:
    //     backslash: \\, A: A

    //  Note: The "A" is not escaped to "\u0041" because there is no need.
    //  The "\uXXXX" format would be produced for non-printable control chars.


    CkStringBuilder_Dispose(sb);

    }