Метод create
Метод create класса OpenOptions устанавливает флаг,
который указывает операционной системе создать файл,
если он не существует. Метод принимает один параметр -
булево значение true или false.
Если передать true, то при открытии файла,
которого нет на диске, он будет создан.
Метод возвращает изменённую ссылку на объект OpenOptions,
что позволяет выстраивать цепочку вызовов.
Синтаксис
OpenOptions::new().create(true).open(path)
Пример
Давайте создадим файл "test.txt",
которого изначально нет на диске,
с помощью метода create:
use std::fs::OpenOptions;
fn main()
{
let res = OpenOptions::new()
.write(true)
.create(true)
.open("test.txt");
match res
{
Ok(_) => println!("File created successfully"),
Err(e) => println!("Error: {}", e),
}
}
Результат выполнения кода:
"File created successfully"
Пример
Если файл уже существует, метод create
не будет перезаписывать его содержимое,
а просто откроет существующий файл:
use std::fs::OpenOptions;
fn main()
{
let res = OpenOptions::new()
.write(true)
.create(true)
.open("test.txt");
match res
{
Ok(_) => println!("File opened successfully"),
Err(e) => println!("Error: {}", e),
}
}
Результат выполнения кода:
"File opened successfully"
Смотрите также
-
метод
new,
который создаёт новый объект OpenOptions -
метод
create_new,
который создаёт новый файл и возвращает ошибку, если он уже существует -
метод
open,
который открывает файл с заданными опциями -
метод
write,
который устанавливает режим записи в файл