文本文件:读取
要读取文件,请以 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 第二个参数中指定的最大行长度,您可以判断该行是否不完整。