我们使用STL编程的时候有时候会想到把一个流对象指向的内容用另一个对象来输出,比如想把一个文件的内容输出到显示器上,
我们可以用简单的两行代码就可以完成:
ifstream fileRead("test.txt",ios::in);
cout<<fileRead.rdbuf();
上面的代码就把fileRead流对象中的流重定向到标准输出cout上,你可以在屏幕上看到test.txt的内容
C++ 中rdbuf重定向的经典例子:
1.
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream fin("1.txt,ios::in|ios::binary);
if(!fin) //if(!fin .is_open())
{
cout<<"源文件打开失败"<<endl;
return 0;
}
cout<<fin.rdbuf();
cout<<endl;
fin.close();
return 0;
}
2.
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream fin("1.txt
我们可以用简单的两行代码就可以完成:
ifstream fileRead("test.txt",ios::in);
cout<<fileRead.rdbuf();
上面的代码就把fileRead流对象中的流重定向到标准输出cout上,你可以在屏幕上看到test.txt的内容
C++ 中rdbuf重定向的经典例子:
1.
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream fin("1.txt,ios::in|ios::binary);
if(!fin) //if(!fin .is_open())
{
cout<<"源文件打开失败"<<endl;
return 0;
}
cout<<fin.rdbuf();
cout<<endl;
fin.close();
return 0;
}
2.
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream fin("1.txt