本文共 744 字,大约阅读时间需要 2 分钟。
1. 以二进制方式读写结构体
struct Student { string name; string sex; int age; } void write(string filePath, const struct Student* stu, int n) { FILE *fp; int i; if ((fp= fopen (filePath, "wb" ))==NULL) { printf ( "cant open the file" ); return ; } for (i=0;i<n;i++) { if ( fwrite (&stu[i], sizeof ( struct Student),1,fp)!=1) printf ( "file write error\n" ); } fclose (fp); } void read(string filePath, const struct Student* stu, int n) { FILE *fp; int i; if ((fp= fopen (filePath, "rb" ))==NULL) { printf ( "cant open the file" ); return ; } for (i=0;i<n;i++) { if ( fread (&stu[i], sizeof ( struct Student),1,fp)!=1) printf ( "file read error\n" ); } fclose (fp); } |