c++进阶之---ifstream/ofstream

来源:互联网 发布:25 知乎 编辑:程序博客网 时间:2024/06/18 08:35


从上图中我们可以清楚的了解到各个I/O类之间的继承关系。ifstream和ostream都满足istream和osteam所拥有的成员函数。

从一个文件中读取:

std::string fileName;
std::cin>>fileName;
ifstream infile(fileName.c_str());
//or
ifstream infile;
infile(fileName.data());
//fileName.c_str(),fileName().data()都是从string对象中提取实际字符串的方法。因为函数名必须是C字符串,string对象本身还包含
//有其他信息,如果文件名中包含空格,我们可以使用cin.getline()

向一个文件写入同样:
ofstream outfile;
outfile.open(fileName.c_str(),std::ostream::app);    //app末尾追加

对一个文件写入和读出:
fstream file;
file.open(fileNmae.c_str(),fstream::in | fstream::out | fstream::app)    //也可以使用ios::app等

对于以上的操作,我们都要检查文件是否正常打开:
file.is_open()

原创粉丝点击