fstream::open
描述 (Description)
打开由参数filename标识的文件,将其与流对象相关联,以便对其内容执行输入/输出操作。 参数模式指定打开模式。
声明 (Declaration)
以下是fstream :: open的声明。
C++98void open (const char* filename,ios_base::openmode mode = ios_base::in | ios_base::out);
C++11void 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);
参数 (Parameters)filename - 包含要打开的文件名的字符串,有关其格式和有效性的详细信息取决于库实现和运行环境。
mode - 描述文件请求的输入/输出模式的标志。
返回值 (Return Value)none
如果函数无法打开文件,则为流设置failbit状态标志(如果使用成员例外注册了该状态标志,则可能会抛出ios_base :: failure)。
异常 (Exceptions)Basic guarantee - 如果抛出异常,则流处于有效状态。
如果函数失败(设置failbit状态标志)并且成员异常被设置为针对该状态抛出,则抛出成员类型失败的异常。
数据竞争 (Data races)修改fstream对象。
对同一流对象的并发访问引入了数据竞争。
例子 (Example)
下面的例子讲解了fstream开放功能。#include
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;
}