输出数据到文本ofstream和从文本中读取数据ifstream

1.使用文件输出的步骤

         1)包含头文件fstream

         2)创建一个ofstream

         3)将该ofstream对象仝一个文件关联起来。

         4)就像使用cout一样使用ofstream

源代码:

#include <iostream>
#include <fstream>
int main()
{
	using namespace std;
	
	char automobile[50];
	int year;
	double a_price;
	double d_price;
	
	
	ofstream outFile;
	outFile.open("tianshuai.txt");
	
	cout<<"Enter the make and model of automobile:";
	cin.getline(automobile,50);
	cout<<"Enter the model year:";
	cin>>year;
	cout<<"Enter the original asking price:";
	cin>>a_price;
	d_price=09.13*a_price;
	
	cout<<fixed;//输出浮点数形式输出变量 
	cout.precision(2);//设置精度 为小数点后两位 
	cout.setf(ios_base::showpoint);//强制显示 小数点  
	cout<<"Make and model:"<<automobile<<endl;
	cout<<"Year:"<<year<<endl;
	cout<<"Was asking {1}quot;<<a_price<<endl;
	cout<<"Now asking {1}quot;<<d_price<<endl;
	
	
	outFile<<fixed;
	outFile.precision(2);
	outFile.setf(ios_base::showpoint);
	outFile<<"Make and model:"<<automobile<<endl;
	outFile<<"Year:"<<year<<endl;
	outFile<<"Was asking {1}quot;<<a_price<<endl;
	outFile<<"Now asking {1}quot;<<d_price<<endl;
	
	outFile.close();//程序使用完文件后关闭 
	return 0;
}

2.读取文本文件

#include <iostream>
#include <fstream>
#include <cstdlib>
const int SIZE=60;
int main()
{
	using namespace std;
	char filename[SIZE];
	ifstream inFile;
	
	cout<<"Enter name of data file:";
	cin.getline(filename,SIZE);
	inFile.open(filename);//打开文件 
	if(!inFile.is_open())//如果打不开文件 
	{
		cout<<"Could not open the file "<<filename<<endl;
		cout<<"Program terminating.\n";
		exit(EXIT_FAILURE);
	}
	double value;
	double sum=0.0;
	int count=0;
	
	inFile>>value;//读取文件中数值 
	while(inFile.good())
	{
		++count; //数值个数 
		sum+=value;//求数值总和 
		inFile>>value;//继续读取数值 
	}
	if(inFile.eof())//文件结尾 
	   cout<<"End of file reached.\n";
    else if(inFile.fail())
       cout<<"Input terminated by data mismatch.\n";
    else
       cout<<"Input termiated for unknown reason.\n";
    if(count==0)
       cout<<"No data processed .\n";
    else
    {
    	cout<<"Items read:"<<count<<endl;
    	cout<<"Sum:"<<sum<<endl;
    	cout<<"Average:"<<sum/count<<endl;
    }
	
	inFile.close();
	
	return 0;
} 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值