#include "iostream"
#include "fstream"
using namespace::std;
int main()
{
    //文件名一般用全基类,书写的方法如下:
    //1)"D:\data\bin\test.dat"  //错误。
    //2)R"(D:\data\bin\test.dat)"  //原神字面量。
    //3)"D:\\data\\bin\\test.dat“  //转义字符。
    //4)"D:/data/bin/test.dat"  //把斜线反着写。
    //5)"/data/bin/test.dat"  //linux小问题采用的方法。
    //string filename=R"(D:\data\bin\test.dat)";
    //char filename[]=R"(D:\data\bin\test.dat)";
    //创建文件输入流对象,打开文件,如果文件不存在,则打开文件失败。
    //ios::in  缺省值
    //ios::binary  以二进制的方式打开文件。
    //ifstream fin(filename,ios::binary)
    //ifstream fin(filename,ios::in|ios::binary)
    ifstream fin("test.dat",ios::in|ios::binary);
    if(fin.is_open()== false)
    {
        cout<<"打开文件text。dat失败。\n";
        return 0;
    }
    struct st_girl
    {
        char name[31];//姓名
        int no;//编号
        char memo[301];//备注
        double weight;//体重
    }girl;
    while(fin.read((char *)&girl,sizeof (girl)))
    {
        cout<<"name="<<girl.name<<"no="<<girl.no<<"memo="<<girl.memo<<"weight="<<girl.weight<<endl;
    }
    fin.close();
    cout<<"文件操作完成。\n";
}
name=西施no=3memo=中国历史第一美女。weight=45.8
name=冰冰no=8memo=也是个大美女哦。weight=55.2
文件操作完成。

发表回复