文件的重定向就是把由键盘输入,屏幕输出转换为输入文件作为输入,把内容放入输出文件。就要用到文件输入输出的类:
ifstream/ofstream/fstream
这些类的关系是:

fstream 读写操作,对打开的文件进行读写操作
ofstream 文件写操作,内存写入存储设备
ifstream 文件读操作,存储设备读到内存中
(只需要读的时候用ofstream,只需要写用ifsterm,读写都用fstream)
用一段程序解释:
#include
#include
#include
using namespace std;
main()
{
ifstream fin("inputisbn.txt");//已有输入文件
ofstream fout("outisbn.txt");//已有输出文件
streambuf*cinbackup;
streambuf*coutbackup;
coutbackup=cout.rdbuf(fout.rdbuf());//用rdbuf()重定向
cinbackup=cin.rdbuf(fin.rdbuf());
cout<<"write"<
>line;
cout<
例1
#include <iostream>
#include<ostream>
#include<fstream>
using namespace std;
main()
{
ifstream fin("inputisbn.txt");//已有输入文件
ofstream fout("outisbn.txt");//已有输出文件
streambuf*cinbackup;
streambuf*coutbackup;
coutbackup=cout.rdbuf(fout.rdbuf());//用rdbuf()重定向
cinbackup=cin.rdbuf(fin.rdbuf());
cout<<"write"<<endl;
char line[100];
cin>>line;
cout<<line;
//restore standard streambuf
cin.rdbuf(cinbackup);//取消,恢复键盘输入
</

最低0.47元/天 解锁文章
854

被折叠的 条评论
为什么被折叠?



