use std::fs::File; use std::io::Read; fn read_a_file() -> std::io::Result<Vec<u8>> { let mut file = try!(File::open("example.data")); let mut data = Vec::new(); try!(file.read_to_end(&mut data)); return Ok(data); }
std::io::Result<T>是的别名Result<T, std::io::Error>。
try!()发生错误时,宏将从函数返回。
read_to_end()是std::io::Read特质的一种方法,必须明确地used。
read_to_end()不返回读取的数据。相反,它将数据放入给定的容器中。