打印本文 打印本文  关闭窗口 关闭窗口  
C语言入门教程-读取文本文件来源于瑞达科技网
作者:佚名  文章来源:网络  点击数  更新时间:2011/1/18   文章录入:瑞达  责任编辑:瑞达科技

读取文本文件

若要读取一个文件,请使用r模式打开。一般来说,读取文件时最好不要用fscanf,因为,除非文件的数据格式非常标准,否则fscanf并不能准确地读取数据。请换用fgets一次读入一行,然后分析提取所需数据。

下面的代码演示了一个读入文件并在屏幕上显示其内容的过程:

#include 

int main()
{FILE *f;char s[1000];f=fopen("infile","r");if (!f)
return 1;while (fgets(s,1000,f)!=NULL)
printf("%s",s);fclose(f);return 0;}

fget函数在遇到文件结束符eof时会返回NULL。程序依次读入各行(本例中最长1,000个字符)并将其在标准输出设备上显示。注意,printf语句的格式字符串中并不包含\n ,这是因为fgets会在它读入的每一行末尾加上一个\n 。所以,若某行的长度超出了限制(由fgets的第二个参数指定),您会发现它将不能被完整地显示。

C 常见错误
不要把fclose误输入成close。close函数是存在的,所以误输入成close也能通过编译。如果只是打开或关闭几个文件的话,程序甚至还表现为正常工作的样子。但是,如果是在一个循环中打开和关闭文件的话,程序最后就会因耗尽可用的文件句柄或内存空间而崩溃,因为close没有正确地将文件关闭。

打印本文 打印本文  关闭窗口 关闭窗口