这样的数据格式怎样读出来?
数据结构如下:
typedef struct RT{
char Name[20];
int Age;
char Disease[30];
}RT;
是这样写入文件 "client.txt "的:
for(i=0;i <2;i++)
{
student[i].Name[19]= '\0 ';
student[i].Disease[29]= '\0 ';
fwrite(&student[i].Name,strlen(student[i].Name),1,fp);
fprintf(fp, "%d ",student[i].Age);
fwrite(&student[i].Disease,strlen(student[i].Disease),1,fp);
}
由fwrite(&student[i].Name,strlen(student[i].Name),1,fp);可知
写入文件时Name的长度不一样,从文件读出来的时候应该怎么读呢?
[解决办法]
先写入Name的长度再写Name的内容。
[解决办法]
建议用tab或者分号逗号什么的分隔符
[解决办法]
建议采用TLV结构写入
Type-length-value
[解决办法]
写的时候可以多写个空格啊区分数据...
比如 abcd 1 dsd