Modification d'un fichier texte
Bonjour,
Récemment je me suis intéressé à la manipulation de fichiers textes avec le pascal, mais je rencontre des difficultés.
J'aimerais aller piocher des informations dans un fichier texte, et en remplacer.
Pour simplifier le problème, le fichier texte (en réalité un dat) sera le suivant :
Et l'objectif sera de faire un programme qui parcours le fichier texte en remplaçant les 1 par des 2. On devrait donc obtenir à la fin :
J'écris donc le programme suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| PROGRAM lecteurtxt(F);
VAR F : text; S : string;
BEGIN
assign(F, 'texte.dat');
filemode:=2;
rewrite(F);
WHILE NOT eof(F) DO BEGIN
readln(F,S);
IF S='1' THEN writeln(F,'2');
END;
close(F);
END. |
Résultat : le programme ne fait que vider le fichier texte (j'ai l'impression qu'il plante en cours de route).
En fait, mon but final serait d'avoir une fonction "lireLigne(F:text ; n:integer): string;" qui renvoie la chaine de caractères de la ligne n du fichier F, et une procédure "remplacerLigne(F:text ; n:integer ; S:string);" qui supprime la ligne n du fichier F pour mettre à la place la chaine de caractères S.
Merci d'avance...