首页 > 代码库 > c++操作文件初体验,读写数据小例子

c++操作文件初体验,读写数据小例子

将数据写入/输出到文件中,进行保存

#include<fstream>    //处理文件要包括头文件fstream  
#include<iostream>  
#include<cstdlib>   //调用exit(1)需要包含cstdlib  
using namespace std;

int main()
{
	int a;
	//打开文件,要使用文件必须正确打开,对输出文件,注意写ios::out  
	// f1.dat是要“写”的文件名,你可以起你喜欢的名字,如myfile.txt  
	ofstream outfile("f1.dat", ios::out);
	if (!outfile)                    //测试文件打开操作是否成功  
	{
		cerr << "open error!" << endl;
		exit(1);                //打开不成功,则提示后退出。  
	}
	//用ios::out方式成功打开文件后,可以如下所示将数据保存到文件中  
	//操作中,要用打开的文件对象名(outfile),而不是用文件名(此例f1.dat)  
	//本例将键盘输入的10个整数“写”到文件中。  
	for (int i = 0; i<10; i++)
	{
		cin >> a;
		outfile << a << endl;   //a被写到了文件  
		//理解:outfile就是前面打开文件时创建的“输出文件流对象”,  
		//是否想起了cout<<a<<endl?道理一样,用法也一样,只是输出到了文件  
	}
	outfile.close();            //关闭文件。用完了必须关闭,否则会丢失数据  
	cout << "处理完毕,请打开文件查看结果!" << endl;
	system("pause");
	return 0;
}
从文件中读入数据,并进行操作

#include <fstream>   //操作文件必写  
#include<iostream>  
#include<cstdlib>   //调用exit(1)需要包含cstdlib  
using namespace std;
int main()
{
	int a, max = -9999, i; //要求最大值,先默认其为一个很小的数  
	//以输入的方式(ios::in)打开文件,注意f1.dat必须在文件夹中存在  
	ifstream infile("f1.dat", ios::in);
	//测试是否成功打开,打开失败时(如要读的数据文件不存在)退出  
	if (!infile)
	{
		cerr << "open error!" << endl;
		exit(1);
	}
	//下面读取数据并完成处理,若数据需要多次使用,可以读入到数组中  
	while (infile >> a)  //当到达文件尾,则循环处理结束。类似cin>>a,只不过数据来源于打开的文件  
	{
		if (a>max) max = a;   //在读入过程中,max将保存最大值  
	}
	infile.close();          //读入完毕要关闭文件  
	//下面对数据的操作和文件就没有关系了,本例输出求得的最大值  
	cout << "文件中最大的数是:" << max << endl;
	system("pause");
	return 0;
}


c++操作文件初体验,读写数据小例子