Avatar ·

如何正确地在Rust 1.x中读写文件?文件操作的事实标准方法

大家好!我是Rust新手,正在尝试理解文件的读写操作。在其他语言(比如Python)中,这通常一行代码就能搞定,但在Rust里我遇到了很多选项:`std::fs::File`、`BufReader`、`read_to_string`、`write_all`……让我有点头晕。 我需要解决两个简单的问题: 1. 将整个文本文件读入一个字符串。 2. 将一个字符串写入文件(创建新文件或覆盖已有文件)。 我试过这样的代码,但感觉太冗长了: ```rust use std::fs::File; use std::io::Read; fn main() { let mut file = File::open("data.txt").unwrap(); let mut contents = String::new(); file.read_to_string(&mut contents).unwrap(); println!("{}", contents); } ``` 以及写入: ```rust use std::fs::File; use std::io::Write; fn main() { let mut file = File::create("output.txt").unwrap(); file.write_all(b"Hello, Rust!").unwrap(); } ``` 问题: - 这是正确的方法吗?或者有更符合习惯的做法?