Save contents of a directory in a Vec<String>

PHOTO EMBED

Wed Jun 15 2022 11:40:18 GMT+0000 (Coordinated Universal Time)

Saved by @aaryaman #rust

use std::fs;

fn main() {
	let dir = "/home/aaryaman/projects/rusty/music";
	let paths = fs::read_dir(&dir).unwrap();
	let names = 
	paths.map(|entry| {
		// entry is a Result<DirEntry, std::io::Error>
		let entry = entry.unwrap();
		// entry is a DirEntry
		
		let entry_path = entry.path();
		// entry_path is a PathBuf
		
		let file_name = entry_path.file_name().unwrap();
		// file_name is OsStr

		let file_name_as_str = file_name.to_str().unwrap();
		let file_name_as_string = String::from(file_name_as_str);

		file_name_as_string

	}).collect::<Vec<String>>();

	println!("{:?}", names);
}
content_copyCOPY

https://stackoverflow.com/a/31226040