rustHow to serialize struct to json in Rust
Serializing a struct to JSON in Rust can be done using the serde
crate. This crate provides a Serialize
trait that can be implemented for a struct to enable serialization.
Example code
use serde::{Serialize, Deserialize};
#[derive(Serialize, Deserialize)]
struct Person {
name: String,
age: u8,
}
fn main() {
let person = Person {
name: "John".to_string(),
age: 30,
};
let serialized = serde_json::to_string(&person).unwrap();
println!("serialized = {}", serialized);
}
Output example
serialized = {"name":"John","age":30}
Code explanation
-
use serde::{Serialize, Deserialize};
- This imports theSerialize
andDeserialize
traits from theserde
crate. -
#[derive(Serialize, Deserialize)]
- This macro derives theSerialize
andDeserialize
traits for thePerson
struct. -
let serialized = serde_json::to_string(&person).unwrap();
- This line serializes theperson
struct to a JSON string using theserde_json
crate. -
println!("serialized = {}", serialized);
- This line prints the serialized JSON string to the console.
Helpful links
Related
- Example of struct private field in Rust
- Example of struct with vector field in Rust
- Example of Rust struct with closure
- How to convert struct to bytes in Rust
- How to pretty print a struct in Rust
- Example of struct public field in Rust
- How to write struct to json file in Rust
- How to convert struct to protobuf in Rust
- Example of struct of structs in Rust
- How to map struct in Rust
More of Rust
- How to replace a capture group using Rust regex?
- How to match the end of a line in a Rust regex?
- How to get a capture group using Rust regex?
- How to parse JSON string in Rust?
- How to match all using regex in Rust?
- Hashshet example in Rust
- How to use regex with bytes in Rust?
- How to get an entry from a HashSet in Rust?
- How to implement PartialEq for a Rust HashMap?
- How do I copy a variable in Rust?
See more codes...