我对文件流的理解是好像有一个随时随地可以打开的传送门,使用它前必须指定打开那个文件(文本文件和二进制文件),然后将文件里的内容读出或将外界的东西写入到文件,这个传送门使用后必须关闭,清除
举个读一个文本文档的例子
我在电脑桌面上创建了一个文本文档,里面存了我记录的东西,现在我要把文本文档里的内容全部在黑屏上显示(控制台下)
实现程序如下
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
fstream file; //定义一个文件流,相当于传送门,只不过它现在是空闲状态,即没有任务。
string s; //定义一个字符串s,临时存放文件里的字符串。
file.open("C://Documents and Settings//Administrator//桌面//新建 文本文档.txt"); //将文件流与桌面上的文本文档绑定,路径必须是"//",打开模式设为默认
if(!file) //检查文件流是否与文本文档绑定
{
cerr<<"打开文件失败"<<endl;
return -1;
}
while(!file.eof()) //将文件里的东西读出,直接在黑屏上显示你的文本文档里的全部内容
{
file >> s;
cout << s <<endl;
}
file.close(); //用完文件流后,得关闭,清除掉,用完传送门后,关闭释放。
file.clear();
return 0;
}