Date création : 26-10-2007 00:00:00 Date de la dernière modification : 12-01-2008 15:57:48
 Vous êtes dans : Langage C Astuces / Exercices
Ennocé
Compter le nombre de caractères d'un fichier
Solution
#include <stdio.h>
int main()
{
FILE *fic;
unsigned int nb_char = 0;
if((fic = fopen("/home/lami20j/trash/fichier.txt","r"))
== NULL)
return -1;
while(fgetc(fic) != EOF)
++nb_char;
fclose(fic);
printf("%d caractères\n",nb_char);
return 0;
}
|
ExplicationEn 1er temps nous ouvrons le fichier en lecture seule.
La variable compteur nb_char est initialisé avec la valeur zéro.
La boucle while((c = fgetc(fic)) != EOF) lit les caractères du fichier un par un, jusqu'à la fin du fichier (EOF - End Of File).
Pour lire les caractères nous utilisons la fonction fgetc.
Le caractère lu par fgetc nous ne le stockons pas, puisque nous n'avons pas besoin.
A chaque lecture d'un caractère la variable nb_char est incrementé d'une unité.
A la fin de la boucle (quand nous sommes arrivé à la fin de fichier), la variable nb_char contiendra le nombre de caractères.
|