将数据存入文件
[基本要求]
1.从0~255,其中10进制,8进制,16进制的表示形式(数与数之间相隔5个字符),一一输出到文件myfile1.dat中。用#include<fstream.h>头文件以使用ofstream类,用#include<iomanip.h>以用输出宽度设置setw()成员函数。
2.将下列格式化的数据输出到文件myfile2.dat中。
名字 年龄 所开课程 课时津贴
张明丽 29 数据结构
55.48
李楷楷 27
面向对象程序设计
61.77
钟静 41 操作系统 128.45
建立数据结构
struct
{
char name[10];
int age;
char course[20];
float salary;
} employees[3];
输出的例子如下:
ofstream out(“myfile2.dat”);
out << setiosflags(ios::left) << setw(10) << employees[0].name;
out << setw(8) << employees[0].age;<p>out << setw(20) << employees[0].course;
out << setiosflags(ios::right|ios::showpoint|ios::fixed);
out << setprecision(2) << setw(8) << employees[0].salary << endl;
[思考问题]
1.如果文件打开时,出错怎么办?
2.要读取这个文件,应该怎么做?
3.如果employees结构数组是一个包含自己的输出处理成员函数的类,例如:
class Employee
{
public:
…
ostream& operator<<(ostream& out, const Employee& e)
{
out<<setiosflags(ios::left)
<<set(10)<<employees[0].name
<<set(8)<<empoyees[0].age
<<set(20)<<employees[0].ssan
<<setprecision(2)
<<setw(8)<<employees[0].salary<<endl;
return out;
}
}
那么,你原先的程序将怎么样?