2017-08-25 136 views
-2

我的Rust程序用於逐行讀取非常大(最大爲幾GB)的簡單文本文件。問題是,該文件太大而無法一次讀取,或者將所有行轉移到Vec<String>在Rust中逐行讀取大文件

在Rust中處理這種情況的慣用方法是什麼?

+2

搜索引擎是你的朋友!一個簡單的搜索「逐行生鏽讀取文件」顯示了很多精美的例子和文檔。 – Kroltan

回答

1

你可以找到例子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()是你所需要的功能。請注意,您是而不是返回換行,如文檔中所述。

+0

請注意,換行符被認爲是LF或CR,然後是LF。 –