标准C语言中如何一次读取某文件中的多行数据

标准C语言中如何一次读取某文件中的多行数据,第1张

有很多种方式可以一次性读取多行数据,具体如何使用,取决于文件内容格式。

一、以fscanf读取。

fscanf读取时,默认会到空白字符截止。所以如果文件中不存在其它空白字符,那么可以以fscanf实现一次性读取多行的效果,比如文件中存储为

1

2.3

name

那么要一次性读取这三行数据,可以使用

int a

float b

char c[20]

fscanf(fp, "%d%f%s",&a,&b,c)

其中,fp为打开该文件的文件指针, 分别将三行数据读取到三个变量a b c中。

二、以fread读取。

fread可以一次性读取若干个数据块,所以如果要读取的文件内容总长度已知,那么可以通过fread一次性读取多行。如

this is

for

my test

only.

以上数据分4行,包括换行符在内共计25字节。

此时可以使用如下代码一次性读取四行:

char buf[100]

fread(buf, 25, 1, fp)

其中fp为打开该文件的文件指针。

double a[100] , b[100] , c[100]

int i=0

FILE *fp

fp=fopen("txt" , "r")

while( !feof(fp) )

{

fscanf( fp , "%lf %lf %lf\n" , &a[i] , &b[i] , &c[i] )

i++

}

fclose(fp)


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存