Rust:
Textdatei einlesen

How to:

Zum Einlesen einer Datei in Rust nutzen wir die Standardbibliothek. Hier ein einfaches Beispiel:

use std::fs::File;
use std::io::{self, Read};

fn main() -> io::Result<()> {
    let mut file = File::open("beispiel.txt")?;
    let mut contents = String::new();
    file.read_to_string(&mut contents)?;
    println!("Dateiinhalt:\n{}", contents);
    Ok(())
}

Beispiel-Ausgabe:

Dateiinhalt:
Hallo, das ist ein Textbeispiel.

Deep Dive

Das Lesen von Textdateien ist eine Grundfähigkeit fast jeder Programmiersprache und reicht zurück bis zu den Anfängen des Computings. In Rust gewährleistet das Typsystem zusätzliche Sicherheit, indem es sicherstellt, dass Fehler beim Dateizugriff zur Compilezeit berücksichtigt werden müssen.

Alternativen zu read_to_string umfassen das Lesen mit einem BufReader für effizienteres Einlesen großer Dateien sowie das Einlesen in Bytes mit read_to_end.

Rusts Result<T, E> Typ für die Fehlerbehandlung erzwingt die Überprüfung auf mögliche Fehler nach jedem Dateizugriff, was zu robusterem Code führt.

See Also