//////////////////////////////////////
//用以測試文件讀取和對文件進行寫入
//2016.4.7
//包含頭文件
#include "stdafx.h"
#include<iostream>
#include<fstream>
#include<iomanip>
//////////////////////////////////////
using namespace std;
int main()
{
int i;
struct information
{
int id;
char name[20];
int basicSalary, addSalary, award, deduction;
}*p;//定義結構體
p = new information;
ofstream outData("e:\\test\\Salary.txt");
cout << setiosflags(ios::left) << "請輸入數據:" << endl;
cout << setw(10) << "職工編號" << setw(10) << "姓名" << setw(10) << "基本工資" << setw(10) << "加班工資" << setw(10)
<< "獎金" << setw(10) << "扣除"<<endl;
for (i = 0;i<3;i++)
{
cin >> p->id >> p->name >> p->basicSalary >> p->addSalary >> p->award >> p->deduction;
outData << p->id << " " << p->name << " " << p->basicSalary << " " << p->addSalary << " " << p->award << " " << p->deduction << endl;
}
outData.close();//從鍵盤輸入並寫入文件
ifstream inData("e:\\test\\Salary.txt");
cout << "從文件Salary.txt讀取數據進行處理後,輸出所有數據:" << endl;
cout << "職工編號" << setw(10) << "姓名" << setw(10) << "基本工資" << setw(10) << "加班工資"
<< setw(10) << "獎金" << setw(10) << "扣除" <<setw(10) << "實發工資" << endl;
inData >> p->id;
while (!inData.eof())
{
inData >> p->name >> p->basicSalary >> p->addSalary >> p->award >> p->deduction;
cout << setw(10) << p->id << setw(10) << p->name << setw(10) << p->basicSalary <<setw(10) << p->addSalary
<< setw(10) << p->award << setw(10) << p->deduction << setw(10)
<< p->basicSalary + p->addSalary + p->award - p->deduction << endl;
inData >> p->id;
}
inData.close();//從文件讀取數據並輸出到屏幕
delete p;//釋放內存
return 0;
}
在C++中測試文件的讀取與寫入
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.