| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 8142 人关注过本帖
标题:有关读取dat数据文件的问题
取消只看楼主 加入收藏
huaijuliu
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2009-9-17
收藏
 问题点数:0 回复次数:2 
有关读取dat数据文件的问题
新手向各位前辈请安了。
有一个dat文件,里面是由matlab生成的一个一维数组,试图将其读取至某指针中。我大体上知道应该用fread or fscanf or fgets来读取文件,但具体实施不是很清楚。
我试着编写了如下程序,但输出结果全部为0.有几点还需请教前辈:1,我必须知道我的dat文件的数据的字节才能采用fread吗?我如何知道这个字节呢?2,这种采用fread好还是其他函数好呢?
感谢大家。
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
    int i;
double help[2049];
FILE *fp = fopen("externalrough1.dat", "r");
if(fp==NULL)
{
printf("Cannot open file strike any key exit!");
exit(1);
}
fread(help,8,2049,fp);
FILE *fh=fopen("LIANXI.dat","w");
for (i=0; i<=2048; i++) fprintf(fh,"%f\n",help[i]);
fprintf (fh, "\n");
fclose(fh);
}
externalrough1.rar (18.59 KB)

搜索更多相关主题的帖子: double matlab dat文件 include 
2011-08-04 23:26
huaijuliu
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2009-9-17
收藏
得分:0 
感谢楼上各位朋友的帮助 小弟继续努力 有了结果前来共享
2011-08-05 16:42
huaijuliu
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2009-9-17
收藏
得分:0 
回复 5楼 voidx
您好感谢您的提示 但我还是不会用fscanf 我编写如下 可是第二个到最后一个数据都不正确 您看是不是需要用for循环给fscanf? 感谢您
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
    int i;
double help[2049];
FILE *fp = fopen("externalrough1.dat", "r");
if(fp==NULL)
{
printf("Cannot open file strike any key exit!");
exit(1);
}
fscanf(fp, "%lf", &help);
FILE *fh=fopen("LIANXI.dat","w");
for (i=0; i<=2048; i++) fprintf(fh,"%f\n",help[i]);
fprintf (fh, "\n");
fclose(fh);
}
2011-08-05 16:55
快速回复:有关读取dat数据文件的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017668 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved