File I/O (Rust)

읽기

let contents = fs::read_to_string("data").expect("Failed to read file");

Line-by-Line 읽기

let file = File::open("data").expect("Failed to open file");
let reader = BufReader::new(file);
let mut lines_iter = reader.lines().map(|l| l.unwrap());

assert_eq!(lines_iter.next(), Some(String::from("data 1")));
assert_eq!(lines_iter.next(), Some(String::from("data 2")));
assert_eq!(lines_iter.next(), Some(String::from("data 3")));

디렉토리 파일들 읽기

let paths = fs::read_dir("store").expect("Failed to read directory");
for path in paths {
    let file = File::open(path.unwrap().path()).expect("Failed to open file");
}

쓰기

let mut file = File::create("data").expect("Failed to create file");
file.write_all("Hello, world!").expect("Failed to write file");

이 문서를 인용한 문서