Lecture de fichier. Boucle

Résolu
Signaler
Messages postés
3
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
28 janvier 2006
-
Messages postés
3
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
28 janvier 2006
-
Bonjour !

J'ai un petit soucis avec la lecture de fichier texte...
Sur chaque ligne, entre autres infos, j'ai l'identifiant de la ligne 1,2,3....,n

J'essai de récupérer le nombre de ligne totale du fichier pour insérer à la ligne suivante n+1 comme info.

Voilà ce que j'ai fait dans mon source

var L: TextFile;
nbLigne: longint;
begin
nbLigne := 0;
if FileExists(repertoire+'fichier.txt') then
begin
AssignFile(L,repertoire+'fichier.txt');
Reset(L);
While not SeekEOF(L) do begin
nbLigne := nbLigne + 1;
showmessage('Lecture ' + inttostr(nbLigne));
end;
CloseFile(L);
end;
end;

J'ai aussi tester avec EOF à la place de SeekEOF. Rien n'y fait, je boucle sans fin dans mon while.
Si quelqu'un à une idée pour me sortir de là ;-)

4 réponses

Messages postés
4202
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
13 juin 2020
37
var
TFT : TStringlist;
begin
TFT := TStringlist.create;
TFT.Loadfromfile(repertoire+'fichier.txt');
showmessage('Nombre de lignes : '+inttostr(TFT.Count));
TFT.Free;
end;

mais ton probleme viens qu'il faut faire comme cela :

nbligne := 0;

while not Eof(L) do begin
Readln(L);
Inc(NbLigne);
end;

ShowMessage(inttostr(nbligne));

<hr size="2" width="100%">La theorie c'est quand on sait tout, mais que rien ne fonctionne.
La pratique c'est quand tout fonctionne, mais que personne ne sait pourquoi.
<hr>
Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
12
salut

le plus simple est de charger ton fichier dans une tstringlist: comme
te le dit F0xi et pour insérer à la ligne n+1 tu fais simplement

TFT.Append('texte a ajouter');

si tu veux utiliser par la suite ne fais pas TFT.free et mets TFT en variable globale!

@+

jlen
Messages postés
3
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
28 janvier 2006

Merci beaucoup !!

Je m'incline devant ta première solution...
Heureusement que je suis novice sur delphi !!! ;-)
Messages postés
3
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
28 janvier 2006

Merci merci ;-)
Nickel ! ça m'a bien aidé, et j'ai pu avancer !