std::ios_base::openmode
typedef /* implementation defined */ openmode; | ||
static constexpr openmode app = /* implementation defined */; static constexpr openmode binary = /* implementation defined */; static constexpr openmode in = /* implementation defined */; static constexpr openmode out = /* implementation defined */; static constexpr openmode trunc = /* implementation defined */; static constexpr openmode ate = /* implementation defined */; | ||
static constexpr openmode noreplace = /* implementation defined */; | (с C++23) |
Указывает доступные флаги открытия файла. Это BitmaskType, определены следующие константы:
| Константа | Объяснение |
|---|---|
app | перейти к концу потока перед каждым записью |
binary | открыть в двоичном режиме |
in | открыть для чтения |
out | открыть для записи |
trunc | очистить содержимое потока при открытии |
ate | перейти к концу потока сразу после открытия |
noreplace (C++23) | открыть в режиме эксклюзивного доступа |
Пример
#include <fstream>
#include <iostream>
#include <string>
int main()
{
const char* fname = "unique_name.txt";
// write to a temporary stream object
std::fstream(fname, std::ios::out | std::ios::trunc) << "Hi";
std::string s;
std::fstream(fname, std::ios::in) >> s;
std::cout << s << '\n';
}Вывод:
Hi
См. также
| открывает файл и настраивает его как ассоциированную последовательность символов (публичный член-функция std::basic_filebuf<CharT,Traits>) |
|
создаёт объект basic_stringbuf (публичный член-функция std::basic_stringbuf<CharT,Traits,Allocator>) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/io/ios_base/openmode