一、文件的输入和输出
fstream头文件定义了三种支持文件IO的类型:
1.ifstream,由istream派生而来,提供读文件的功能
2.ofstream,由ostream派生而来,提供写文件功能
3.fstream, 由iostream派生而来,提供读写同一个文件的功能
fstream类型除了继承下来的行为外,还定义了两个自己的新操作open和close,以及形参为要打开的文件名的构造函数。
fstream、ifstream或ofstream对象可调用这些操作,而其他的IO类型则不能调用。
二、文件流对象的作用
ifstream infile(ifile.c_str());
ofstream outfile(ofile.c_str());
上述代码定义并打开了一对fstream对象。infile是读的流,而oufile则是写的流。为ifstream或者ofstream对象提供文件名作 为初始化式,就相当 于打开了特定的文件。
ifstream infile;
ofstream outfile;
上述语句将infile 定义为读文件的流对象,将outfile 定义为写文件的对象。这两个对象都 没有捆绑具体 的文件。 在使用fstream对象之前,还必须使这些对象捆绑要读写的文件:
infile.open("in");
ouffile.open("out");
打开文件后,通常要检验打开是否成功。
if(!infile){
cerr << "error: unable to open input file:" << ifile << endl;
return -1;
}