以二进制方式读写,打开方式要制定为ios::binary
.1写文件
利用流对象调用成员函数write ostream& write(const char * buffer , int len ) ;
第一个参数为字符型常量指针,第二个为长度
class Person {
public:
char m_name[64]; //最好用c的char类型,而不用C++中的string
int m_age;
};
void test() {
ofstream ofs("test.txt", ios::out | ios::binary);
//==ofs.open("Test.txt", ios::out | ios::binary)
Person p = { "李四",20 };
//ofs.write(p.m_name,64); //把p,name以二进制方式写入文件
ofs.write((const char*)&p, sizeof(Person)); //把p强制类型转换为指针
ofs.close();
}
.2读文件
利用流对象调用成员函数read istream& read (char *buffer ,int len);