-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