std::ios_base::openmode
来自 cppreference.com
typedef /* implementation defined */ openmode; |
||
static constexpr openmode app = /* implementation defined */; static constexpr openmode binary = /* 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> 的公有成员函数) |