文件输入输出

头文件fstream定义了三个类型来支持文件IO:

1、ifstream从一个给定文件读取数据;

2、ofstream型一个给定文件写入数据;

3、fstream可以读写一个文件。

 

这些类型提供的操作于之前使用过的对象cin和cout的操作是一样的。可以用IO运算符<<和>>来读写文件,可以用getline从一个ifstream读取数据,等等。

除了继承自iostream类型的行为之外,fstream还有其他定义操作: 

fstream  fstrm 创建一个未绑定的文件流.fstream是头文件fstream中定义的一个类型
fstream  fstrm(s) 创建一个fstream,并打开名为s的文件。s可以是string类型,或者是一个指向C风格字符串指针。这些构造函数都是explict的。默认的文件模式mode以来于fstream
fstream  fstream(s,mode)

与前一个构造函数类似,但按指定mode打开 

fstrm.open(s) 打开一个名为s的文件,但将文件与fstrm绑定。s可以是string类型,或者是一个指向C风格字符串指针。这些构造函数都是explict的。默认的文件模式mode以来于fstream
fstrm.close() 关闭与fstrm绑定的文件。返回void
fstrm.is_open() 返回一个bool值,指出与fstrm关联的文件是否成功打开且尚未关闭

 

int main() {
    ifstream input;
    input.open("/home/quzhang/CLionProjects/test/vis.log");
    ofstream output;
    output.open("/home/quzhang/CLionProjects/test/vis.text");
    assert(input.is_open());
    string strLine;
    while (getline(input, strLine)) {
        if (!strLine.empty() && !strLine.find("hui_su_ceng : ")) {
            output << strLine.substr(14) << endl;
        }
    }
    input.close();
    output.close();
}

 

posted on 2020-09-22 17:20  QzZq  阅读(154)  评论(0)    收藏  举报

导航