Sample code for 30+ languages & platforms
DataFlex

JSON Escape and Unescape a String

Demonstrates how to JSON escape or unescape a string.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Handle hoSb
    Boolean iSuccess
    String sTemp1

    Get Create (RefClass(cComChilkatStringBuilder)) To hoSb
    If (Not(IsComObjectCreated(hoSb))) Begin
        Send CreateComObject of hoSb
    End

    Get ComAppend Of hoSb "backslash: \\, A: \u0041" To iSuccess
    Get ComGetAsString Of hoSb To sTemp1
    Showln sTemp1

    // 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.
    Get ComDecode Of hoSb "json" "utf-8" To iSuccess
    Get ComGetAsString Of hoSb To sTemp1
    Showln sTemp1

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

    // Now JSON escape the string.
    Get ComEncode Of hoSb "json" "utf-8" To iSuccess
    Get ComGetAsString Of hoSb To sTemp1
    Showln sTemp1

    // 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.


End_Procedure