C语言文本文件的读写

如下数据保存在文件infile.dat中.我想把它读出来,存到结构体数组中stuctpro{floatmsl;floatla,lo;doublerefractivity,... 如下数据保存在文件infile.dat中.我想把它读出来,存到结构体数组中
stuct pro
{float msl;
float la,lo;
double refractivity,density,pressure;
float temp;
}atm[200];
然后把数据写到out.txt中.
请问高手,具体该怎么做呢?如果可以的话,希望能有一个完整的C程序.如果能发到我的邮箱就更好了. EMAIL:xiongbo595@163.com
还有点小问题,美中不足.
1.如果要自己控制换行,比如图片中有7列数据,我只想要前四列,如何让它在读完四个数之后自动换行读下一行的数?
2.这样的文件有N个,且文件名没有规律.如何利用文件名做索引,将它们都用这个程序处理了?
3.每个文件中的数据行数不确定,是否要用到链表处理呢?
如果您觉得问题太多了,只回答3和4或者只回答3也可以,先谢谢诸位了!
展开
 我来答
匿名用户
2010-04-26
展开全部
//---------------------------------------------------------------------------

#include <stdio.h>
struct pro
{float msl;
float la,lo;
double refractivity,density,pressure;
float temp;
}atm[200];

int main(void)
{
FILE *fp=fopen("infile.dat","r"),*fp2=NULL;
int i;
if (!fp||(fp2=fopen("out.txt","w"))==NULL) {
fprintf(stderr,"FILE ERROR");
return -1;
}
for (i = 0; i<200; i++) {
/*从infile.dat文件读取数据*/
fscanf(fp,"%f%f%f%lf%lf%lf%f",&atm[i].msl,&atm[i].la,&atm[i].lo,&atm[i].refractivity,&atm[i].density,&atm[i].pressure,&atm[i].temp);
/*将数据写到out.txt文件*/
fprintf(fp,"%f\t%f\t%f\t%lf\t%lf\t%lf\t%f\n",atm[i].msl,atm[i].la,atm[i].lo,atm[i].refractivity,atm[i].density,atm[i].pressure,atm[i].temp);
}
fclose(fp);
fclose(fp2);
return 0;
}
//---------------------------------------------------------------------------
DevKit
2010-04-26 · 专注互联网领域,谢谢关注。
DevKit
采纳数:28 获赞数:78

向TA提问 私信TA
展开全部
infile.dat 里的数据是用什么格式存储的?
我的意思是,其中数据的存储顺序....
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gzjxfz
2010-04-26 · 超过10用户采纳过TA的回答
知道答主
回答量:28
采纳率:0%
帮助的人:30.5万
展开全部
你那都转换成字符串了,要把数据读出来的话,得自己写一个识别函数,将字符串转换成相应类型的数,很麻烦的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式