Rust
Rust
Ascii85 Encoding and Decoding
See more Encryption Examples
Demonstrates ascii85 encoding and decoding.Note: Requires Chilkat v9.5.0.79 or greater.
Chilkat Rust Downloads
// First demonstrate encoding strings to ascii85 and back.
let sb = chilkat::StringBuilder::new();
let _ = sb.append("Man is distinguished, not only by his reason, but by this singular passion from other animals, which is a lust of the mind, that by a perseverance of delight in the continued and indefatigable generation of knowledge, exceeds the short vehemence of any carnal pleasure.").is_ok();
let mut encoded_ascii85 = sb.get_encoded("ascii85", "utf-8").unwrap_or_default();
println!("{}", encoded_ascii85);
// Result is: 9jqo^BlbD-BleB1DJ+*+F(f,q/0JhKF<GL>Cj@.4 ... DII?(E,9)oF*2M7/c
// Decode back to the original:
sb.clear();
let _ = sb.append(&encoded_ascii85);
let _ = sb.decode("ascii85", "utf-8").is_ok();
println!("Original:");
println!("{}", sb.get_as_string().unwrap_or_default());
// ---- Now encode binary data to ascii85 ----
let bd = chilkat::BinData::new();
let _ = bd.load_file("qa_data/jpg/starfish20.jpg").is_ok();
encoded_ascii85 = bd.get_encoded("ascii85").unwrap_or_default();
println!("{}", encoded_ascii85);
// Result is: s4IA0!"_al8O`[\!<E0k!([(is8E!F7VQ[M+Eqj?FED)3+C]U=6"Fn ...
// Decode...
let _ = bd.clear();
let _ = bd.append_encoded(&encoded_ascii85, "ascii85");
let _ = bd.write_file("qa_output/starfish20.jpg").is_ok();