-2
我的Rust程序用于逐行读取非常大(最大为几GB)的简单文本文件。问题是,该文件太大而无法一次读取,或者将所有行转移到Vec<String>
。在Rust中逐行读取大文件
在Rust中处理这种情况的惯用方法是什么?
我的Rust程序用于逐行读取非常大(最大为几GB)的简单文本文件。问题是,该文件太大而无法一次读取,或者将所有行转移到Vec<String>
。在Rust中逐行读取大文件
在Rust中处理这种情况的惯用方法是什么?
你可以找到例子on the internet:
use std::io::{BufReader,BufRead};
use std::fs::File;
fn main() {
let file = File::open("file.txt").unwrap();
for line in BufReader::new(file).lines() {
println!("{}", line.unwrap());
}
}
BufReader.lines()
是你所需要的功能。请注意,您是而不是返回换行,如文档中所述。
请注意,换行符被认为是LF或CR,然后是LF。 –
搜索引擎是你的朋友!一个简单的搜索“逐行生锈读取文件”显示了很多精美的例子和文档。 – Kroltan