Bonjour,
voici le code me qui me permet de calculer le nombre des lignes dans un fichier txt :
Bon, ma question c'est : Est ce que c'est la meilleur solution, ou il faut passer caractere par carcatere, sachant que je suis sur un environement embarque, d'ou la question sur la consomation de la memoire ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 int getNbLines(const char *file,long pos) { int nbLines; char line[SIZE_LINE_MAX]; /* line instance in file */ FILE *fp; assert (file != NULL); nbLines = 0; line[0] = '\0'; if ((fp = fopen(file, "r")) != NULL) { if(fseek(fp, pos, SEEK_SET)<0){ return FAILURE; } while (fgets(line, SIZE_LINE_MAX, fp) != NULL){ nbLines++; } fclose(fp); } return nbLines; }
MERCI
Partager