文件流fstream和字符串流sstream的使用

文件流就是将流与文件进行绑定,读写文件。字符串流就是将流与字符串进行绑定,读写字符串。

文件流类有ifstream,ofstream和fstream,而字符串流类有istrstream,ostrstream和strstream。文件流类和字符串流类都是ostream,istream和iostream类的派生类,因此对它们的操作方法是基本相同的。

以下以实例说明文件流的使用方法:

#include "stdafx.h"
#include 
#include 
#include 
using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{
	/***IO标准库使用C风格的字符串而不是C++(string)风格的字符串,故要调用c_str()函数。***/

	//定义流,并绑定相应的文件,如果文件不存在会创建文件 1---------

	string strfilein = "1.txt",strfileout = "2.txt";

	//定义读入流并绑定文件,作用:将文件中的数据读入到string等
	ifstream infile(strfilein.c_str(),ifstream::in|ifstream::binary);

	//定义写入流并绑定文件,作用:将string的数据读入到文件等
	//指定app模式,这样打开文件后,文件中原有的数据就不会被删除
	ofstream outfile(strfileout.c_str(),ofstream::out|ofstream::app);

	//定义流,并绑定相应的文件,如果文件不存在会创建文件 2---------

	string strfilein1 = "3.txt",strfileout1 = "4.txt";

	ifstream infile1;   //定义读入流

	ofstream outfile1; //定义写入流

	infile1.open(strfilein1.c_str());//读入流绑定文件,使用文件默认的模式

	outfile1.open(strfileout1.c_str());//写入流绑定文件,使用文件默认的模式

	//判断文件打开是否成功----------------------

	if(!infile)
	{
		cout<<"打开文件失败:infile"<> strcontent;//遇到 空格\t、回车\n 结束输入

		//getline(infile,strcontent);//一次读取文件中的一行

		outfile << strcontent;//写入到文件里
	}
	return 0;
}


你可能感兴趣的:(容器)