(Tcl) JSON Escape and Unescape a String
Demonstrates how to JSON escape or unescape a string.
load ./chilkat.dll
set sb [new_CkStringBuilder]
CkStringBuilder_Append $sb "backslash: \\\\, A: \\u0041"
puts [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"
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
|