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) |
Определяет доступные флаги открытия файла. Это тип битовой маски; определены следующие константы:
| Константа | Пояснение |
|---|---|
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/cpp/io/ios_base/openmode