写入文本文件
#include <iostream>
#include <fstream>//包含头文件
int main()
{
using namespace std;
char automobile[50];
int year;
double a_price;
double d_price;
ofstream outFile;//1.创建ofstream
outFile.open("carinfo.txt");//2.将该ofstream与一个文件关联起来
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 = 0.913*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 $ "<<a_price<<endl;
cout<<"Now asking $ "<<d_price<<endl;
//3.同cout一样使用
outFile<<fixed;
outFile.precision(2);
outFile.setf(ios_base::showpoint);
outFile<<"Make and model : "<<automobile<<endl ;
outFile<<"Year: "<<year<<endl;
outFile<<"Was asking $ "<<a_price<<endl;
outFile<<"Now asking $ "<<d_price<<endl;
outFile.close();//4.使用完关闭文件流
system("pause");
}
读取文本文件
/************************************************************************/
/*
文件的输入流
1.包含头文件
2.定义一个用处理输入的ifstream
3.将文件与ifstream对象关联起来
4.结合使用ifstream eof,fail 等方法来判断输入是否成功
5.关闭ifstream
*/
/************************************************************************/
#include <iostream>
#include <fstream>
#include <cstdlib>
#define 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 terminated for unkonw reason.\n";
}
if (count == 0){
cout<<"No data processed.\n";
}else{
cout<<"Item read: "<<count<<endl;
cout<<"Sum: "<<sum<<endl;
cout<<"Average: "<<sum/count<<endl;
}
inFile.close();
system("pause");
return 0;
}