【发布时间】:2019-06-25 13:31:44
【问题描述】:
我有以下 YAML 文件
version: '3'
indexed:
file1: "abc"
file2: "def"
file3: 33
我用这段代码读过它:
pub fn read_conf() -> Result<(), Box<dyn Error>>{
let f = File::open(".\\src\\conf.yaml")?;
let d: Mapping = from_reader(f)?;
let value = d.get(&Value::String("version".into())).unwrap();
println!("{:?}", value.as_str().unwrap());
let value = d.get(&Value::String("indexed.file1".into())).unwrap();
println!("{:?}", value);
Ok(())
}
产生
"3"
thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', src\libcore\option.rs:345:21
如何实例化Value 以获得所需的值?
【问题讨论】:
-
好吧,我的错。我已经有一段时间没有问任何问题了,这也是我关于 Rust 的第一个问题。无论如何,我会记住这一点。