Sample code for 30+ languages & platforms
Rust

JSON Escape and Unescape a String

Demonstrates how to JSON escape or unescape a string.

Chilkat Rust Downloads

Rust
let sb = chilkat::StringBuilder::new();

let _ = sb.append("backslash: \\\\, A: \\u0041");
println!("{}", sb.get_as_string().unwrap_or_default());

// 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.
let _ = sb.decode("json", "utf-8");
println!("{}", sb.get_as_string().unwrap_or_default());

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

// Now JSON escape the string.
let _ = sb.encode("json", "utf-8");
println!("{}", sb.get_as_string().unwrap_or_default());

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