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

Разбор пути в Rust

Путь разбирают на имя и расширение. Для этого строку превращают в ссылку на Path и вызывают методы, которые отдают необязательные куски текста. Так отделяют последний сегмент от суффикса после точки.

Посмотрим на путь с папкой и файлом:

use std::path::Path; fn main() { let path = Path::new("docs/report.txt"); match path.file_name() { Some(name) => println!("{}", name.to_string_lossy()), None => println!("no name"), } match path.extension() { Some(ext) => println!("{}", ext.to_string_lossy()), None => println!("no ext"), } }

На экране "report.txt" и "txt". Для файла в корне достаточно одного имени:

use std::path::Path; fn main() { let path = Path::new("note.txt"); match path.file_name() { Some(name) => println!("{}", name.to_string_lossy()), None => println!("no name"), } }

Дан путь:

let path = "a/b.txt";

Выведите имя файла и расширение через Path.

Дан путь:

let path = "data";

Скажите, что вернет запрос расширения для такой строки.

Напишите функцию, которая принимает срез пути и печатает имя, если оно есть.

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