(Tcl) JSON Escape and Unescape a String
The encoding mode keyword "json" was added in Chilkat v9.5.0.66 to provide the ability to escape and unescape JSON strings. See Chilkat Encodings for the full list of encoding keywords, such as "base64", "hex", "url", etc.
load ./chilkat.dll
# Note: This example requires Chilkat version 9.5.0.66 or greater.
set sb [new_CkStringBuilder]
CkStringBuilder_Append $sb "backslash: \\\\, A: \\u0041"
puts [CkStringBuilder_getAsString $sb]
# The output is:
# backslash: \\, A: \u0041
# Starting in Chilkat v9.5.0.66, 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"
puts [CkStringBuilder_getAsString $sb]
# After JSON unescaping:
# backslash: \, A: A
# Now JSON escape the string.
CkStringBuilder_Encode $sb "json" "utf-8"
puts [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.
delete_CkStringBuilder $sb
|