我有一个 C 结构数组,我将它序列化到一个文件中,我需要再次将该数据检索到内存中。
movie list[50]; //array
typedef struct{
int code;
int year;
float price;
char title[50];
char director[30];
char description[255];
} movie;
序列化数据示例
1|1990|9.900000|Hello world|Foo bar baz|lorem ipsum bla bla|
34|1994|4.900000|lorem ipsum|lorem ipsum|lorem ipsum|
23|1993|5.100000|lorem ipsum|lorem ipsum|lorem ipsum|
.
.
.
要序列化,我只需将数组和 fprintf 每个属性遍历到一行。
但是要读取数据,显然是行不通的
while( fscanf("%d|%d|%f|%s|%s|%s|",&list[i].code, &list[i].year, ...)!= EOF){
i++;
...
}