文件流:C++把对文件的操作封装到了类中。
ifstream 输入文件流
ofstream 输出文件流
fstream 输入/输出文件流
1、打开文件
使用类的构造函数或open成员函数打开文件,它们的参数一样。
void open( const char *filename, openmode mode );
或
ofstream ofs("test.txt");
if(ofs.good())//good成员函数用于判断文件是否打开成功
{
cout << "文件打开成功" << endl;
}
mode:
ios::app 追加输出
ios::ate 当已打开时寻找到EOF
ios::binary 以二进制模式打开文件
ios::in 为读取打开文件
ios::out 为写入打开文件,
ios::trunc 覆盖存在的文件
ifstream:默认mode
ios::in 为读取打开文件,文件不存在则打开失败
ofstream: 默认mode
ios::out 为写入打开文件,文件不存在则创建
ios::trunc 清空存在的文件
fstream: 默认mode
ios::in 为读取打开文件
ios::out 为写入打开文件
2、关闭流 close成员函数
与标准C的fclose和系统的close功能一样。
3、格式化输入输出
可以完全按照cout/cin的使用方式来读写格式化文件。
在读写类或结构时候可以重载输入输出运算符(<</>>)来提高效率,重载方法与cout/cin的一样。
还可以使用一些格式标志来设置输入输出流的格式,通过flags(), setf(), 和 unsetf() 三个函数来控制。
详细格式志请查看帮助手册。