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

Метод open

Метод open класса OpenOptions открывает файл с учётом всех настроек, заданных через методы read, write, append, create, create_new и truncate. Параметром метод принимает путь к файлу. Метод возвращает значение типа Result<File>: при успехе - открытый файл, а при ошибке - объект io::Error.

Синтаксис

OpenOptions::new().open(path)

Пример

Давайте откроем файл "test.txt" только для чтения:

use std::fs::OpenOptions; fn main() { let res = OpenOptions::new() .read(true) .open("test.txt"); match res { Ok(_) => println!("File opened"), Err(e) => println!("Error: {}", e), } }

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

"File opened"

Пример

Давайте откроем файл для записи и создания, если его нет:

use std::fs::OpenOptions; use std::io::Write; fn main() { let res = OpenOptions::new() .write(true) .create(true) .open("test.txt"); match res { Ok(mut file) => { file.write_all(b"abcde").unwrap(); println!("Data written"); }, Err(e) => println!("Error: {}", e), } }

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

"Data written"

Пример

Давайте откроем файл в режиме добавления в конец:

use std::fs::OpenOptions; use std::io::Write; fn main() { let res = OpenOptions::new() .append(true) .create(true) .open("test.txt"); match res { Ok(mut file) => { file.write_all(b"12345").unwrap(); println!("Data appended"); }, Err(e) => println!("Error: {}", e), } }

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

"Data appended"

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

  • класс OpenOptions,
    который настраивает параметры открытия файла
  • метод new,
    который создаёт новый набор опций для открытия файла
  • метод create,
    который разрешает создание файла, если его нет
  • метод append,
    который включает режим добавления данных в конец файла
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить