Rustでテキストファイルの読み込み&書き込み

投稿日: 更新日:

備忘録です

テキストファイルの読み込み

File::openで読み込み専用で開きます

use std::io::{ BufReader, BufRead };
use std::fs::File;

fn main() -> std::io::Result<()> {
    let path = "input.txt";
    // 読み込み専用で開く
    let f = File::open(path)?;
    let bfr = BufReader::new(f);

    let mut lines = Vec::new();

    for ll in bfr.lines() {
        lines.push(ll.unwrap());
    }

    println!("{:?}", lines);

    Ok(())
}

テキストファイルの書き込み

読み込みとは違いFile::createで書き込み専用で開きます

use std::fs::File;
use std::io::{ BufWriter, Write };

fn main() -> std::io::Result<()> {
    let path = "output.txt";
    // 書き込み専用で開く
    let f = File::create(path)?;
    let mut bfw = BufWriter::new(f);

    let lines = vec!["abcde\n", "12345\n", "あいうえお\n"];

    for s in lines {
        let _ = bfw.write(s.as_bytes());
    }

    Ok(())
}

書いた人

profile_image

お茶の葉

物理とプログラミングが好きな人