FILE I/O Gestione della persistenza

file

blocco di byte di dimenzione arbitraria associata ad un nome

rust offre l'astrazione std::fs::File

Navigare il file

std::fs::read_dir(dir: &Path) -> Result<ReadDir> restituisce un iteratore al contenuto della cartella dir

std::fs::create_dir(dir: &Path) -> Result<()> crea una nuova cartella

std::fs::remove_dir(dir: &Path) -> Result<()> rimuove una cartella

Manipolare i file

std::fs::copy(from: &Path, to: &Path) -> Result<i64> copia il contenuto di un file in un secondo file

std::fs::rename(from: &Path, to: &Path) -> Result<()> rinomina (sposta) un file in un secondo file

std::fs::remove_file(path: &Path) -> Result<()> elimina un file

Aprire un file

open(path: P) -> Result<File> where P: AsRef<Path> apre il file a condizione che esista

create(path: P) -> Result<File> where P: AsRef<Path> tronca il file a 0 se esiste o lo crea se non esiste

Leggere e scrivere file

std::fs::read_to_string(path: &Path)

std::fs::write(path: &Path, contents: &[u8])

Tratti relativi a I/O

Read, BufRead, Write, Seel

ErrorKind in caso di errore