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

Метод truncate

Метод truncate класса OpenOptions устанавливает флаг, который определяет, будет ли файл обрезан до нулевой длины при открытии. Параметром метод принимает логическое значение: true - обрезать файл, false - не обрезать. Метод возвращает изменённый объект OpenOptions, что позволяет использовать цепочку вызовов.

Важно: флаг truncate работает только в том случае, если файл открывается для записи (установлен флаг write или append). Если файл не существует, флаг truncate игнорируется, если не установлен create.

Синтаксис

OpenOptions::new().truncate(bool)

Пример

Давайте создадим файл с содержимым, а затем откроем его с флагом truncate, установленным в true, чтобы обрезать файл до нулевой длины:

use std::fs::OpenOptions; use std::io::Write; use std::io::Read; fn main() { let mut file = OpenOptions::new() .write(true) .create(true) .truncate(true) .open("test.txt") .unwrap(); file.write_all(b"abcde").unwrap(); drop(file); let mut file = OpenOptions::new() .write(true) .truncate(true) .open("test.txt") .unwrap(); let mut content = String::new(); file.read_to_string(&mut content).unwrap(); println!("{:?}", content); }

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

""

Пример

Давайте откроем файл с флагом truncate, установленным в false, чтобы сохранить содержимое файла:

use std::fs::OpenOptions; use std::io::Write; use std::io::Read; fn main() { let mut file = OpenOptions::new() .write(true) .create(true) .truncate(false) .open("test.txt") .unwrap(); file.write_all(b"12345").unwrap(); drop(file); let mut file = OpenOptions::new() .read(true) .truncate(false) .open("test.txt") .unwrap(); let mut content = String::new(); file.read_to_string(&mut content).unwrap(); println!("{:?}", content); }

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

"12345"

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

  • класс OpenOptions,
    который позволяет настраивать параметры открытия файла
  • метод create,
    который создаёт файл, если он не существует
  • метод write,
    который открывает файл для записи
  • метод open,
    который открывает файл с заданными параметрами
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить