NB Ligne dans un fichier texte

ProGMaN007 Messages postés 6 Date d'inscription dimanche 12 mai 2002 Statut Membre Dernière intervention 17 mai 2002 - 13 mai 2002 à 20:31
cs_Amadeus Messages postés 123 Date d'inscription mercredi 2 janvier 2002 Statut Membre Dernière intervention 15 mars 2004 - 15 mai 2002 à 09:17
salut, comment connaître le nombre de ligne dans un fichier txt ?

2 réponses

cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
13 mai 2002 à 21:28
soit F un fichier texte déclaré :
f : file of text;
L : string;

Alors, comme chaque ligne peut avoir un longueur variable, il n'y a pas d'autre solution que de parcourir le fichier du début à la fin :
AssignFile(F, 'MonFichier.txt');
Reset(F);
i:=0;
While not Eof(F) do
begin
Readln(F, L);
Inc(i);
end;
CloseFile(F);

I contient alors le nombre de lignes. Mais, je le répète, c'est pour le cas où la longueur des lignes n'est pas connue.

Regardes l'excellent didacticiel sur les fichiers sur le site de Frédéric BEAULIEU.

May Delphi be with you.
0
cs_Amadeus Messages postés 123 Date d'inscription mercredi 2 janvier 2002 Statut Membre Dernière intervention 15 mars 2004 2
15 mai 2002 à 09:17
Sinon il suffit de charger le fichier dans un TStringList :

Try
slt:= TstringList.create;
slt.LoadFromFile(sF);
iNbLigne:= slt.Count-1;
finally
slt.free;
end;

iNbLigne contient le nombre de ligne du fichier. (il faut que les lignes du fichier se finissent par un retour chariot et/ou un fin de ligne (LF et/ou CR).
0
Rejoignez-nous