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

Метод extension

Метод extension возвращает расширение файла, содержащееся в пути Path. Метод не принимает параметров и возвращает значение типа Option<&OsStr>. Если у файла есть расширение, возвращается Some с расширением без точки, иначе возвращается None.

Синтаксис

path.extension()

Пример

Давайте получим расширение из пути "file.txt":

use std::path::Path; fn main() { let path = Path::new("file.txt"); let res = path.extension(); println!("{:?}", res); }

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

Some("txt")

Пример

Давайте получим расширение из пути с полным адресом "/home/user/document.pdf":

use std::path::Path; fn main() { let path = Path::new("/home/user/document.pdf"); let res = path.extension(); println!("{:?}", res); }

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

Some("pdf")

Пример

Давайте получим расширение из пути, у которого нет расширения - "abcde":

use std::path::Path; fn main() { let path = Path::new("abcde"); let res = path.extension(); println!("{:?}", res); }

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

None

Пример

Давайте извлечём расширение и преобразуем его в строку с помощью to_str:

use std::path::Path; fn main() { let path = Path::new("archive.tar.gz"); let res = path.extension().and_then(|ext| ext.to_str()); println!("{:?}", res); }

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

Some("gz")

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

  • метод file_stem,
    который возвращает имя файла без расширения
  • метод file_name,
    который возвращает имя файла из пути
  • метод with_extension,
    который заменяет расширение файла в пути
  • метод Path,
    который представляет путь к файлу или директории
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить