Sample code for 30+ languages & platforms
Rust

StringBuilder Encode Charset

Demonstrates the importance of the charset argument when encoding/decoding.

Chilkat Rust Downloads

Rust
let s = "é é é".to_string();

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

let _ = sb.append(&s);
let _ = sb.entity_decode();

// The string now contains: "é é é"
println!("{}", sb.get_as_string().unwrap_or_default());

// If encoded to hex using the iso-8859-1 charset, 
// each é char is represented in 1 byte.
// Output: E920E920E9
println!("{}", sb.get_encoded("hex", "iso-8859-1").unwrap_or_default());

// If encoded to hex using the utf-8 charset, 
// each é char is represented in 2 bytes.
// Output: C3A920C3A920C3A9
println!("{}", sb.get_encoded("hex", "utf-8").unwrap_or_default());

// Here's utf-16
// Output: E9002000E9002000E900
println!("{}", sb.get_encoded("hex", "utf-16").unwrap_or_default());

// utf-32
// Output: E900000020000000E900000020000000E9000000
println!("{}", sb.get_encoded("hex", "utf-32").unwrap_or_default());