问题及代码:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
fstream outfile,infile; //定义文件流对象
outfile.open("data.dat",ios::out); //以输出方式打开文件 data,dat
outfile<<"1111111111"<<endl; //将字符串存入磁盘文件 data.dat
outfile<<"aaaaaaaaaa"<<endl;
outfile<<"AAAAAAAAAA"<<endl;
outfile<<"**********"<<endl;
outfile.close(); //关闭磁盘文件 data.dat
infile.open("data.dat",ios::in); //以输入方式打开文件 data,dat
char line[80];
int i=0;
while(!infile.eof()) //成功打开文件的时候
{
i++;
infile.getline(line,sizeof(line)); //得到每行的数据
cout<<i<<": "<<line<<endl;
}
infile.close(); //关闭磁盘文件 data.dat
return 0;
}
运行结果:
执行后,在程序文件夹里生成了一个data.dat 文件
以记事本方式打开文件,看到结果正是输入结果
运行结果,看到一共输出了五行,而在data.dat文件里只有四行,那是因为在data.dat文件的最后一行有一个回车符
知识点总结:
在运用文件流的时候,首先头文件 #include<fstream>
然后定义一个对象
ios::in 以输入方式大开文件
ios::out 以输出方式打开文件,如果已有此名字的文件,则将其原内容删除
infile.getline(line,sizeof(line)); 获得每行的数据