C语言里 一行一行从文件里读入数据,怎么做

C语言里 一行一行从文件里读入数据,怎么做,第1张

关键技巧: 每行数据个数随机,可用 c = fgetc(fin) ungetc(c,fin) 检查是否读到 换行符或文件结束符。

例如:

a.txt

1 2 3 45 56

67

8 9 10

至于记录每行数据个数,存放到数组,等等,可以自己补充完善。

程序:

#include <stdio.h>

int main( )

{

FILE *fin

int a,c

fin=fopen("a.txt","rw")

while(1){

c = fgetc(fin)

if (c==EOF) break

if (c=='\n') {printf("\n==========\n")continue}

ungetc(c,fin)

fscanf(fin,"%d",&a)printf("%d ",a)

}

fclose(fin)

return 0

}

x是int类型,数据是double类型,显然数据格式适配。修改如下。

#include <stdio.h>

int main() {

    int i

    double a[5]

    if((fp = fopen("GPS.txt","rt")) == NULL) {

        printf("不能打开数据文件。\n")

        return 1

    }

    for(i = 0 i < 5 ++i) {

        fscanf(fp,"%lf",&a[i])

        printf("%lf\n",a[i])

    }

    fclose(fp)

    // 数据处理

    return 0

}

fopen以"r"方式打开文件。

然后循环以fgets读取。 这个函数是一次读一行的。

然后输出就好

读到EOF fgets会返回NULL

退出并关闭文件就好。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10060234.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存