Avatar ·

Cómo obtener una lista de archivos en un directorio en Rust

¡Hola a todos! Acabo de empezar a aprender Rust y estoy intentando escribir una utilidad simple para trabajar con archivos. Necesito obtener una lista de todos los archivos en un directorio dado. En Python usaría `os.listdir()`, pero en Rust no encuentro un equivalente. He probado a usar `std::fs::read_dir()`, pero no entiendo cómo procesar correctamente el resultado. Aquí está mi código: ```rust use std::fs; fn main() { let entries = fs::read_dir(".").unwrap(); for entry in entries { println!("{:?}", entry); } } ``` Esto imprime algo como `Ok(DirEntry(...))`, pero yo solo necesito los nombres de los archivos. También quiero distinguir archivos de carpetas y, posiblemente, filtrar solo archivos con una extensión específica (por ejemplo, `.txt`). También me interesa saber cómo manejar errores sin `unwrap()`, porque en un proyecto real la carpeta puede no existir o no ser accesible para lectura. ¿Podrían indicarme cómo implementar correctamente la obtención de la lista de archivos en Rust? Preferiblemente con manejo de errores y filtrado. ¡Gracias de antemano!