无法将json反序列化为rust中的结构
我正在尝试将字符串反序列化为rust中的结构。以下代码仅来自无法将json反序列化为rust中的结构,rust,Rust,我正在尝试将字符串反序列化为rust中的结构。以下代码仅来自json\u serde文档 use serde::{Deserialize, Serialize}; use serde_json::Result; #[derive(Serialize, Deserialize)] struct Person { name: String, age: u8, phones: Vec<String>, } fn main() { let data = r
json\u serde
文档
use serde::{Deserialize, Serialize};
use serde_json::Result;
#[derive(Serialize, Deserialize)]
struct Person {
name: String,
age: u8,
phones: Vec<String>,
}
fn main() {
let data = r#"
{
"name": "John Doe",
"age": 43,
"phones": [
"+44 1234567",
"+44 2345678"
]
}"#;
// Parse the string of data into a Person object. This is exactly the
// same function as the one that produced serde_json::Value above, but
// now we are asking it for a Person as output.
let p: Person = serde_json::from_str(data).expect("bal");
// Do things just like with any other Rust data structure.
println!("Please call {} at the number {}", p.name, p.phones[0]);
}
尽管从serde
导入序列化和反序列化并添加到struct。这给了我一个错误。
我哪里做错了?您需要在
货物中激活派生宏功能。toml
:
serde = { version = "1.0", features = ["derive"] }
您需要在
Cargo.toml
中激活派生宏功能:
serde = { version = "1.0", features = ["derive"] }
serde = { version = "1.0", features = ["derive"] }