怎样用C语言读取从EXCEL拷过来变成是.txt的文件?

来源:百度知道 编辑:UC知道 时间:2024/05/25 07:58:15
功率 进口 出口
0 18.2 17.8
0 18.1 17.7
0 18 17.6
0 17.9 17.5
0 17.8 17.4
0 18 17.5
2.4 19.1 20.6
2.4 20.9 22.5
2.4 21.9 23.4
2.4 22.5 24.1
2.4 23.1 24.6
2.4 23.1 24.8
2.4 23.4 25
2.3 23.8 25.2
2.3 24.1 25.4
这个数据是我从excel拷到文本文件中的,但是读取的时候,对其中的空格很混乱,请高手指点。

excel可以另存为好几种格式的,一一试,总有一个适合.

#include "stdio.h"
#include "stdlib.h"
#define N 15
//假设 15 组数据
void main()
{
FILE *fp;
static double p[N],in[N],out[N];
int i=0;
if((fp=fopen("D:\\abc.txt","r"))==NULL)
//假设你的文件为存在D盘根目录下的abc.txt
{ printf("Can't open the file!\n");
exit(0);
}
while(!feof(fp))
{ fscanf(fp,"%lf%lf%lf",&p[i],&in[i],&out[i]);
i++;
}
for(i=0;i<15;i++)
printf("%7.2f%7.2f%7.2f\n",p[i],in[i],out[i]);

}

象txt文本文件不能象楼上那样直接用double 读吧,.\
我这思路是先从文件读取一行,应该是字符型的.
然后从每行中再分解出字串,再用函数转换成浮点数.
TC下己OK.

float atof(char *c)
{
float f;
sscanf(c,"%f",&f);
return f;
}

main(){
FILE *fp;
float x[10],y[10],z[10]; //这里随你行数多少定大小
char str[80],s1[20],s2[20],s3[20];
int i,j; <