РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
898 of 1245 menu

Класс PathBuf

Класс PathBuf представляет собой изменяемую, владеющую строку пути в файловой системе. Он похож на String, но специализирован для работы с путями. В отличие от Path, который является срезом и не владеет данными, PathBuf владеет содержимым и позволяет изменять путь: добавлять компоненты, менять имя файла или расширение.

Класс PathBuf можно создать с помощью метода new, из строки через метод from, а также преобразовать из Path. Для добавления компонентов используется метод push, для удаления последнего компонента - метод pop.

Синтаксис

use std::path::PathBuf; let path = PathBuf::new(); let path = PathBuf::from("abcde");

Пример

Давайте создадим новый пустой PathBuf и добавим в него компоненты пути с помощью метода push:

use std::path::PathBuf; fn main() { let mut path = PathBuf::new(); path.push("abcde"); path.push("12345"); println!("{}", path.display()); }

Результат выполнения кода:

abcde/12345

Пример

Давайте создадим PathBuf из строки с помощью метода from и выведем его на экран:

use std::path::PathBuf; fn main() { let path = PathBuf::from("abcde/12345"); println!("{}", path.display()); }

Результат выполнения кода:

abcde/12345

Пример

Давайте удалим последний компонент пути с помощью метода pop:

use std::path::PathBuf; fn main() { let mut path = PathBuf::from("abcde/12345"); let removed = path.pop(); println!("removed: {}", removed); println!("path: {}", path.display()); }

Результат выполнения кода:

removed: true path: abcde

Смотрите также

  • метод new,
    который создаёт новый пустой PathBuf
  • метод from,
    который создаёт PathBuf из строки
  • метод push,
    который добавляет компонент к пути
  • метод pop,
    который удаляет последний компонент пути
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить