我在 Rust 1.6.0 中有一个 JSON 编码的对象。我想从 JSON 解码它,更改一个键的值,然后再次将其转换回 JSON 编码字符串。我不想写一个结构来保存数据。
我正在使用 rustc_serialize,它似乎主要是围绕序列化结构构建并自动执行此操作,但我只想要一个简单的 JSON 修改。
json_contents
是一个String
具有原始编码 JSON 对象的对象。
let new_value = json::Json::from_str(&format!("[\"http://localhost:{}\"]", port)).unwrap();
let mut myjson_0 = json::Json::from_str(&json_contents).unwrap();
let mut myjson = tilejson_0.as_object().unwrap();
myjson.insert("mykey".to_owned(), new_value);
let new_json: String = json::encode(&myjson).unwrap();
但是我收到以下错误:
src/main.rs:53:5: 53:13 error: cannot borrow immutable borrowed content `*myjson` as mutable
src/main.rs:53 myjson.insert("mykey".to_owned(), new_value);
^~~~~~
error: aborting due to previous error
我怎样才能编译这个?我可以使用更好、更简单的 JSON Rust 库吗?