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

Метод metadata

Метод metadata возвращает информацию о файле или директории, расположенных по данному пути. Он возвращает результат типа io::Result<Metadata>: при успехе - структуру Metadata с информацией о размере, времени создания, правах доступа и типе файла, а при ошибке - значение Err. Метод не принимает параметров и следует символическим ссылкам, то есть возвращает метаданные целевого файла, а не самой ссылки.

Синтаксис

path.metadata()

Пример

Давайте получим метаданные файла "Cargo.toml" и узнаем его размер:

use std::path::Path; fn main() { let path = Path::new("Cargo.toml"); let res = path.metadata(); match res { Ok(meta) => println!("{}", meta.len()), Err(e) => println!("Error: {}", e), } }

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

123

Пример

Давайте проверим, является ли путь "src" директорией:

use std::path::Path; fn main() { let path = Path::new("src"); let res = path.metadata(); match res { Ok(meta) => println!("{}", meta.is_dir()), Err(e) => println!("Error: {}", e), } }

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

true

Пример

Давайте попробуем получить метаданные несуществующего файла "xyz.txt" и обработаем ошибку:

use std::path::Path; fn main() { let path = Path::new("xyz.txt"); let res = path.metadata(); match res { Ok(meta) => println!("{}", meta.len()), Err(e) => println!("Error: {}", e), } }

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

Error: No such file or directory (os error 2)

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

  • класс Metadata,
    который хранит метаданные файла или директории
  • метод exists,
    который проверяет, существует ли путь
  • метод is_file,
    который проверяет, является ли путь файлом
  • метод is_dir,
    который проверяет, является ли путь директорией
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить