我的Rust程序旨在逐行读取非常大(最多几GB)的简单文本文件.问题是,此文件太大而无法立即读取,或将所有行传输到a Vec<String>.
在Rust中处理这个问题的惯用方法是什么?
Fre*_*ios 34
您可以在互联网上找到示例:
use std::fs::File;
use std::io::{self, prelude::*, BufReader};
fn main() -> io::Result<()> {
let file = File::open("foo.txt")?;
let reader = BufReader::new(file);
for line in reader.lines() {
println!("{}", line?);
}
Ok(())
}
Run Code Online (Sandbox Code Playgroud)
BufRead是你需要的功能.请注意,如文档中所述,您不会返回换行符.
| 归档时间: |
|
| 查看次数: |
14863 次 |
| 最近记录: |