Как я могу отфильтровать список имен файлов по их расширению? - PullRequest
0 голосов
/ 26 мая 2020

Мне удалось прочитать все файлы с одного пути до Vec, и теперь я хочу отфильтровать по расширению.

let path = Path::new(r"C:\Testpath");
let mut faxvec: Vec<String> = Vec::new();

for element in path.read_dir().unwrap() {
    // if match element
    faxvec.push(element);
}

Я хочу только pu sh файлы в векторе, который заканчиваться на ".txt"

1 Ответ

1 голос
/ 26 мая 2020

Может быть, вы ищете что-то вроде:

fn main() {
    let mut faxvec: Vec<std::path::PathBuf> = Vec::new();
    for element in std::path::Path::new(r"C:\Testpath").read_dir().unwrap() {
        let path = element.unwrap().path();
        if let Some(extension) = path.extension() {
            if extension == "txt" {
                faxvec.push(path);
            }
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...