Rust serde JSON Example
Just a basic example of the JSON processing serde crate for Rust.
Code
use serde_json::Result;
use serde_json::Value;
use std::fs;
fn main() {
let text = String::from(
r#"{
"alfa": "apple",
"bravo": 3,
"charlie": [
"cherry",
5
],
"delta": {
"echo": 7
}
}"#,
);
match output(&text) {
Ok(()) => println!("Ok"),
Err(e) => println!("Error: {}", e),
};
match check_data(&text) {
Ok(x) => {
println!("{}", &x["alfa"].as_str().unwrap())
}
Err(e) => println!("Error: {}", e),
}
}
fn output(text: &String) -> std::io::Result<()> {
fs::write("outputs/json.json", text)?;
Ok(())
}
fn check_data(text: &String) -> Result<Value> {
let v: Value = serde_json::from_str(text)?;
Ok(v)
}