二进制方式读文件主要利用流对象调用成员函数read
函数原型:istream& read(char * buffer,int len);
参数解释:字符指针buffer指向内存中一段存储空间,len是读写的字节数
示例:操作对象是上篇写二进制文件的内容,再以二进制的方式读取出来
#include<iostream>
using namespace std;
#include<fstream>
#include<string>
class Person
{
public:
char m_Name[32];
int age;
};
void test01()
{
//1.包含头文件
//2.创建流对象
//3.打开文件 并判断是否打开成功
ifstream ifs("Person.txt",ios::in|ios::binary);
if (!ifs.is_open())
{
cout << strerror(errno) << endl;
}
Person p;
//4.读文件
ifs.read((char*)&p, sizeof(p));
cout << "姓名:" << p.m_Name << " " << "年龄" << p.age << endl;
ifs.read((char*)&p, sizeof(p));
cout << "姓名:" << p.m_Name << " " << "年龄" << p.age << endl;
//5.关闭文件
ifs.close();
}
int main()
{
test01();
return 0;
}