首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

这样的数据格式怎样读出来?该如何处理

2012-03-03 
这样的数据格式怎样读出来?数据结构如下:typedefstructRT{charName[20]intAgecharDisease[30]}RT是这

这样的数据格式怎样读出来?
数据结构如下:
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

热点排行