我需要轉換 serde_json::Value 中的特定字串,但在使用時出現尾隨字符錯誤:
let new_str = "73723235c81ebbec0"
let json_value: serde_json::Value = serde_json::from_str(new_str).unwrap();
錯誤:
trailing characters at line 1 column 9
有沒有辦法將這些型別的字串轉換為 serde_json::Value?
uj5u.com熱心網友回復:
查看 repo serde_json,從他們的測驗用例中可以看出這是預期的行為。例如,請參閱此測驗用例。由于您的字串以數字值開頭,因此它試圖決議為數字,然后在到達位置 9 的“c”時失敗。
而不是呼叫from_str(),使用to_value(). 這將為您提供列舉的String變體。Value
let json_value: serde_json::Value = serde_json::to_value(&new_str).unwrap();
此外,如果您使用to_value(),則可以省略變數的型別識別符號,我認為這可能更慣用。
let json_value = serde_json::to_value(&new_str).unwrap();
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/453174.html
標籤:解析 锈 serde-json
上一篇:5個字符后自動添加破折號
