Получение общего количества строк в файле - PullRequest
5 голосов
/ 16 декабря 2009

Может кто-нибудь показать мне, как получить общее количество строк в текстовом файле на языке программирования C?

Ответы [ 2 ]

21 голосов
/ 16 декабря 2009

Это один подход:

FILE* myfile = fopen("test.txt", "r");
int ch, number_of_lines = 0;

do 
{
    ch = fgetc(myfile);
    if(ch == '\n')
        number_of_lines++;
} while (ch != EOF);

// last line doesn't end with a new line!
// but there has to be a line at least before the last line
if(ch != '\n' && number_of_lines != 0) 
    number_of_lines++;

fclose(myfile);

printf("number of lines in test.txt = %d", number_of_lines);
0 голосов
/ 13 июня 2013

Решение "не руководителем проекта"

system("wc profile.dat > no.lines"); 
FILE *pfile = fopen("no.lines", "r");
int lines; 
fscanf(pfile, "%d", &lines); 
system("rm no.lines");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...