Avatar ·

Como obter uma lista de arquivos em um diretório no Rust?

Olá a todos! Comecei a estudar Rust recentemente e estou tentando escrever um utilitário simples para trabalhar com arquivos. Preciso obter uma lista de todos os arquivos em um diretório específico. Em Python, eu usaria `os.listdir()`, mas no Rust não consigo encontrar um equivalente. Tentei usar `std::fs::read_dir()`, mas não entendo como processar corretamente o resultado. Aqui está meu código: ```rust use std::fs; fn main() { let entries = fs::read_dir(".").unwrap(); for entry in entries { println!("{:?}", entry); } } ``` Ele imprime algo como `Ok(DirEntry(...))`, mas eu preciso apenas dos nomes dos arquivos. Além disso, quero distinguir arquivos de pastas e, possivelmente, filtrar apenas arquivos com uma extensão específica (por exemplo, `.txt`). Também estou interessado em como lidar com erros sem `unwrap()`, porque em um projeto real o diretório pode não existir ou não estar acessível para leitura. Alguém pode me ajudar a implementar corretamente a obtenção da lista de arquivos em Rust? De preferência com tratamento de erros e filtragem. Desde já, obrigado!