C语言结构体如何存入文件?

如题所述

第1个回答  推荐于2019-09-16
最好用2进制方法打开文件,用fwrite 写文件。读时也用用2进制方法打开文件,用fread读.
这样,写的时候按整个结构写,读也按整个结构读,字符串有空白也没关系。
FILE *fp;

fp=fopen("my.dat","wb");
fwrite(&stu,sizeof(stu),1,fp); // 写1个结构
for (i=0;i<10;i++) fwrite(&student[i],sizeof(student),1,fp); // 写10个结构
fclose(fp);

fp=fopen("my.dat","rb");
fread(&stu,sizeof(stu),1,fp); // 读1个结构
for (i=0;i<10;i++) fread(&student[i],sizeof(student),1,fp); // 读 10个结构
fclose(fp);本回答被网友采纳
相似回答