C++ Fstream 库 - Open 函数
描述
打开由参数文件名标识的文件,将其与流对象相关联,以便对其内容执行输入/输出操作。 参数模式指定打开模式。
声明
以下是 fstream::open 的声明。
C++98
void open (const char* filename,ios_base::openmode mode = ios_base::in | ios_base::out);
C++11
void open (const char* filename,ios_base::openmode mode = ios_base::in | ios_base::out); void open (const string& filename,ios_base::openmode mode = ios_base::in | ios_base::out);
参数
filename − 带有要打开的文件名的字符串,具体格式和有效性取决于库的实现和运行环境。
mode − 描述文件请求的输入/输出模式的标志。
返回值
none
如果函数无法打开文件,则为流设置故障位状态标志(如果该状态标志是使用成员异常注册的,则可能会抛出 ios_base::failure)。
异常
Basic guarantee − 如果抛出异常,则流处于有效状态。
如果函数失败(设置 failbit 状态标志)并且成员异常被设置为该状态的 throw,它会抛出成员类型失败的异常。
数据竞争
修改 fstream 对象。
对同一流对象的并发访问会引入数据竞争。
示例
在下面的示例中解释了 fstream 打开功能。
#include <fstream> int main () { std::fstream fs; fs.open ("test.txt", std::fstream::in | std::fstream::out | std::fstream::app); fs << " more lorem ipsum"; fs.close(); return 0; }