#include<iostream>
#include<fstream>
using namespace std;
class Stu
{
public:
Stu()
{
strcpy_s(name, "zhangsan");//strcpy_s()函数是对strcpy()函数的改进
id = 10;
}
Stu(char *n,int i)
{
strcpy_s(name, n);
id = i;
}
int id;
char name[20];
};
int main()
{
ofstream out1;
out1.open("d.dat", ios::binary);
Stu s1[5];
for (int i = 0; i < 5; i++)
{
cout << "输入姓名:" << endl;
cin >> s1[i].name;
cout << "输入编号:" << endl;
cin >> s1[i].id;
}
for (int i = 0; i < 5; i++)//向磁盘写文件
{
out1.write((char*)&s1[i], sizeof(s1[i]));
}
out1.close();
cout << "-------------输入结束-----------------" << endl;
Stu s2[5];
ifstream in1;
in1.open("d.dat", ios::binary);
for (int i = 0; i < 5; i++)
{
in1.read((char *)&s2[i], sizeof(s2[i]));//读取刚才保存的文件放在s2[]下
}
cout << "读取数据:" << endl;
for (int i = 0; i < 5; i++)
{
cout <<"name:"<< s2[i].name << "id:"<<s2[i].id << endl;
}
return 0;
}