Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗rsPmFsRD 366 of 373 menu
◀ ▶

Чтение папки в Rust

Чтение папки отдает имена того, что лежит внутри. Команда возвращает итератор по записям каталога. Каждая запись снова оборачивается в результат: удача несет описание одного элемента, сбой сообщает о проблеме чтения.

Подготовим каталог и выведем имена:

use std::fs; use std::io; fn list_data() -> io::Result<()> { for entry in fs::read_dir("data")? { let item = entry?; let name = item.file_name(); println!("{}", name.to_string_lossy()); } Ok(()) } fn main() -> io::Result<()> { fs::create_dir_all("data")?; fs::write("data/a.txt", "1")?; fs::write("data/b.txt", "2")?; list_data()?; Ok(()) }

Можно отфильтровать только файлы по метаданным записи:

use std::fs; use std::io; fn main() -> io::Result<()> { for entry in fs::read_dir("data")? { let item = entry?; let info = item.metadata()?; if info.is_file() { println!("{}", item.file_name().to_string_lossy()); } } Ok(()) }

Дан путь:

let path = "docs";

Создайте каталог с двумя файлами, прочитайте папку и выведите оба имени.

Дан путь:

let path = "data";

Посчитайте только файлы внутри и выведите число.

Скажите, сколько раз знак вопроса нужен в простом цикле по чтению папки.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить