Create A Directory In Rust (Recursively)
This is the basic function I use to make directories in Rust. It's like running mkdir -p /some/path
on the command line.
use std::path::PathBuf;
fn main() {
let dir = PathBuf::from("some/path");
match mkdir_p(&dir) {
Ok(_) => println!("Directory was made or already exists"),
Err(e) => println!("Error: {}", e)
}
}
fn mkdir_p(dir: &PathBuf) -> std::io::Result<()> {
if dir.exists() {
Ok(())
} else {
std::fs::create_dir_all(dir)
}
}
Directory was made or already exists