从文本文件里读取数字,c语言如何实现

从文本文件里读取数字,c语言如何实现,第1张

voidmain()

{

FILE*fin

inta,b,c,d

chars[20]

floatf1,f2,f3,f4

fin=fopen("abc.txt","r")//打开

fscanf(fin,"%1d%1d%1d%1d",&a,&b,&c,&d)//按1位整型读前4个数

printf("a=%db=%dc=%dd=%d\n",a,b,c,d)

rewind(fin)//文件回绕到开始处

fscanf(fin,"%s",s)//按字符串读一串

printf("s=%s\n",s)

rewind(fin)//文件回绕到开始处

fscanf(fin,"%1f%1f%1f%1f",&f1,&f2,&f3,&f4)//按1位float型读前4个数

printf("%f%f%f%f\n",f1,f2,f3,f4)

flcose(fin)

}

abc.txt内容:

123456789

读到数组:

inty[20]

inti

fin=fopen("abc.txt","r")

for(i=0i<9i++)fscanf(fin,"%1d",&y[i])

扩展资料

C语言中文件的读取

fopen(打开文件)

相关函数open,fclose

表头文件#include<stdio.h>

定义函数FILE*fopen(constchar*path,constchar*mode)

函数说明参数路乱册径包含包含打开的文件路径和文件名,参数模式字符串则代表着流形态。

模式有以下几种形态类别:

r:预期文件,该文件必须存在。

r+:可读写的文件,该文件必须存在。

w:只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。

w+:可读写文件,若文件存在则文件长度清为零,旁碰即该文件内容会消哗启宏失。若文件不存在则建立该文件。

a以附加的方式打开只写文件。若文件不存在,则建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。

括号位置错了,==优先级比=高先执行,如果成功打开文睁核件,fopen返回的不是NULL,所以和NULL比较结果为0,然后fp被赋为0,所以实际上没有读到内容 #include <stdio.h>main() { int achar *iFILE *fpif((fp=fopen("ANT.IN","r"))==NULL)/袜早旁*这里修改一下*/ { printf("File can not open!"告橡) exit(1) } fgets(i,256,fp) fclose(fp)a=atoi(i)printf("%d",a)}

先用getline或fgets读取数据到一个字符串中,这个串定义的长一点,保证够用就行,如:

char

str[1024]

fgets(

str

,

sizeof(str),

fp

)

/盯祥燃/fp为你打开的文件指针

然后调用for循环去读取串的的数据,假设你的分隔符是空格,遍历str,遇到空格就得到一宴物个数据,然后继续遍历,直到str尾。凯虚

然后再去fgets数据,再遍历,即可得到所有的数据。


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

原文地址: http://outofmemory.cn/tougao/12273881.html

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

发表评论

登录后才能评论

评论列表(0条)

保存