文本文件:读取
要读取文件,请以 r 模式打开它。通常,不建议使用 fscanf 进行读取:除非文件格式完美,否则 fscanf 无法正确处理。相反,请使用 fgets 读取每一行,然后解析出您需要的部分。
以下代码演示了读取文件并将其内容输出到屏幕的过程
广告
#include <stdio.h>
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;
}
fgets 语句在文件结束标记处返回 NULL 值。它读取一行(在此例中最多 1,000 个字符),然后将其打印到标准输出 (stdout)。请注意,printf 语句的格式字符串中不包含 \n,因为 fgets 会在其读取的每一行末尾添加 \n。因此,如果一行超出 fgets 第二个参数中指定的最大行长度,您可以判断该行是否不完整。