用c语言怎么读取txt文件中的行数

如题所述

读取文件行数, 可以逐个字符读取文件,到文件尾,统计\n的个数

参考代码如下

#include <stdio.h>
int main()
{
    int c;
    FILE *fp;
    int lines=0;
    fp=fopen("in.txt", "rb");
    if(fp)
    {
        while((c=fgetc(fp)) != EOF)
            if(c=='\n') lines++;
        printf("%d\n",lines);
        fclose(fp);
    }
    return 0;
}

也可以通过fgets函数,每次读取一行,到文件尾,然后计算读取的次数

#include <stdio.h>
#include <string.h>
int main()
{
    char s[100];
    FILE *fp;
    int lines=0;
    fp=fopen("in.txt", "r");
    if(fp)
    {
        while((fgets(s,100,fp)) != NULL)
            if(s[strlen(s)-1]=='\n') lines++;
        printf("%d\n",lines);
        fclose(fp);
    }
    return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-03-14
简单办法是:打开文件,用fgetc读取字符并判断是否为'\n',是则给初值为0的行记数变量增1。
相似回答