rustHow to convert a Rust HashMap to JSON?
Converting a Rust HashMap to JSON can be done using the serde crate. serde provides a Serialize trait which can be used to serialize a Rust data structure into a JSON string.
Example code
use serde::{Serialize, Deserialize};
#[derive(Serialize, Deserialize)]
struct Person {
name: String,
age: u8,
}
fn main() {
let mut map = std::collections::HashMap::new();
map.insert("John", Person {
name: "John".to_string(),
age: 30,
});
map.insert("Alice", Person {
name: "Alice".to_string(),
age: 25,
});
let json = serde_json::to_string(&map).unwrap();
println!("{}", json);
}
Output example
{"John":{"name":"John","age":30},"Alice":{"name":"Alice","age":25}}
Code explanation
-
use serde::{Serialize, Deserialize};: This imports theSerializeandDeserializetraits from theserdecrate. -
#[derive(Serialize, Deserialize)]: This derives theSerializeandDeserializetraits for thePersonstruct. -
let json = serde_json::to_string(&map).unwrap();: This uses theserde_jsoncrate to serialize themapinto a JSON string. -
println!("{}", json);: This prints the JSON string to the console.
Helpful links
Related
- How to create a Rust HashMap with a string key?
- How to print a Rust HashMap?
- How to create a HashMap of structs in Rust?
- How to insert an element into a Rust HashMap if it does not already exist?
- How to remove an element from a Rust HashMap if a condition is met?
- How to lock a Rust HashMap?
- How to pop an element from a Rust HashMap?
- How to compare two Rust HashMaps?
- How to create a HashMap of HashMaps in Rust?
- How to sort a Rust HashMap?
More of Rust
- Rust map function example
- How to replace strings using Rust regex?
- How to use regex lookbehind in Rust?
- How to use 'or' in Rust regex?
- Regex example to match multiline string in Rust?
- How to loop until error in Rust
- How to match whitespace with a regex in Rust?
- How to use regex lookahead in Rust?
- How to use Unicode in a regex in Rust?
- How to match a URL with a regex in Rust?
See more codes...