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

Функция join_paths

Функция join_paths из модуля std::path соединяет несколько путей в один общий путь. Она принимает итератор из элементов, каждый из которых может быть преобразован в путь, и возвращает результат типа Result. Если хотя бы один из переданных путей не может быть преобразован в допустимый путь, функция возвращает ошибку.

Функция полезна, когда нужно собрать полный путь из отдельных частей: например, из базовой директории и относительного пути внутри неё. Разделитель путей подставляется автоматически в зависимости от платформы: обратный слеш в Windows и прямой слеш в Unix-подобных системах.

Синтаксис

std::path::join_paths(paths)

Пример

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

use std::path::join_paths; fn main() { let parts = ["dir1", "dir2", "file.txt"]; let res = join_paths(parts).unwrap(); println!("{}", res.display()); }

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

"dir1/dir2/file.txt"

Пример

Давайте соединим абсолютный и относительный пути:

use std::path::join_paths; fn main() { let parts = ["/home/user", "docs", "readme.md"]; let res = join_paths(parts).unwrap(); println!("{}", res.display()); }

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

"/home/user/docs/readme.md"

Пример

Давайте проверим, как функция обрабатывает пустой путь в середине списка частей:

use std::path::join_paths; fn main() { let parts = ["abcde", "", "12345"]; let res = join_paths(parts).unwrap(); println!("{}", res.display()); }

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

"abcde/12345"

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

  • функция split_paths,
    которая разбивает строку путей на отдельные пути
  • функция current_dir,
    которая возвращает текущую рабочую директорию
  • функция set_current_dir,
    которая устанавливает текущую рабочую директорию
  • функция current_exe,
    которая возвращает путь к текущему исполняемому файлу
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить