c语言怎么把文件读入结构体
时间: 2023-09-27 10:03:56 浏览: 80
c语言读入文本文档到结构体.txt
在C语言中,可以使用文件操作函数来读取文件并将其存储到结构体中。以下是一个简单的示例:
假设我们有一个名为“person.dat”的二进制文件,其中包含5个人员记录,每个记录都有“姓名”、“年龄”和“性别”字段,可以使用以下结构体来表示:
```c
struct Person {
char name[50];
int age;
char gender;
};
```
然后可以使用以下代码将文件读入结构体:
```c
#include <stdio.h>
int main() {
FILE *fp;
struct Person person[5];
fp = fopen("person.dat", "rb");
if(fp == NULL) {
printf("Error opening file\n");
return 1;
}
fread(person, sizeof(struct Person), 5, fp);
fclose(fp);
return 0;
}
```
在这个例子中,我们首先打开文件并检查它是否成功打开。然后使用“fread()”函数将文件中的数据读取到“person”结构体数组中。最后,关闭文件并返回0表示成功。
需要注意的是,文件中的数据必须按照结构体的顺序进行存储,否则可能会读取到不正确的数据。此外,还需要注意文件打开模式,“rb”表示以二进制模式打开文件,以便正确读取二进制数据。
阅读全文