14.8.5 文本文件的读写
文本文件的读写和前面介绍的输入流和输出流用法几乎一致,所不同的是将cout和cin等标准输入输出流替换成了ofstream类和ifstream类对象,面向的对象也是文本文件,如示例代码14.28所示。
代码14.28 文本文件读写TXTReadAndWrite
<———————————-文件名:example1428.cpp———————————————-> 01 #include<iostream> 02 #include<fstream> 03 using namespace std; 04 main() 05 { 06 ofstream out("test. dat");//创建ofstream流对象out 07 if(!out. is_open())//判断文件关联是否成功 08 { 09 cout<<"文件打开失败"; 10 return 0; 11 } 12 out<<5<<""<<3. 14515<<""<<"string\n";//将信息写入test.dat中,注意分隔 13 out. close();//关闭流 14 int ix; 15 double dy; 16 char sz[10]; 17 ifstream in("test. dat");//创建ifstream流对象in,以便从test.dat中读取信息 18 if(!in. is_open())//以判断文件关联是否成功 19 { 20 cout<<"读取文件失败"; 21 } 22 in>>ix>>dy>>sz;//数据读入 23 cout<<ix<<endl<<dy<<endl<<sz<<endl;//标准输出,屏幕显示 24 in. close();//关闭流 25 return 1; 26 }
输出结果如下所示。
5 3.14515 string
【代码解析】代码14.28在文件夹中创建了文件test.dat,其中内容可以通过记事本程序查看。上例首先创建了1个ofstream流对象,将1个整数值、1个浮点数值和1个字符串写入文件test.dat中,而后代码第17行创建了1个ifstream流对象,从test.dat中将信息读出,赋值给变量ix、dy和字符数组sz,并借助标准输出流对象cout输出。
注意
输入输出流中其他方法,如put函数、get函数和getline函数等都适用于文件输入输出流对象。