Page 1 sur 1

[..] Effacement un mot dans un fichier texte

Posté : mer. 24 nov. 2010 20:06
par pierrotm777
J'ai un dictionnaire du genre fichier texte dico.txt

MAISON
BATEAU
VELO
VOITURE
AVION

Je souhaite effacer un mot de ce fichier .

J'ai donc essayé ceci:

Code : Tout sélectionner

#Include <File.au3>
#include <string.au3>

$Path = @ScriptDir & "\dico.txt"
$File = FileOpen ("dico.txt")
For $i = 1 To _FileCountLines ($Path)
        $line = FileReadLine ($File,$i)
    $rep = StringRegExpReplace($line,"VELO","",1)
    _FileWriteToLine ($Path,$i,$rep,1)
Next
le probleme c'est que le mot VELO est effacé mais aussi remplacé par le mot suivant !

J'ai aussi essayé:

Code : Tout sélectionner

_ReplaceStringInFile(@ScriptDir & "\dico.txt","VELO" ,"")
Là, le mot est bien effacé mais laisse place à une ligne vide.

Re: [..] Effacement un mot dans un fichier texte

Posté : mer. 24 nov. 2010 21:45
par jbnh
Ce que tu peux faire, c'est de passer en revue le dico ligne par ligne, si la ligne ne vaut pas ce que tu veux supprimer : tu écris dans un nouveau fichier (dico2 par ex), si ca correspond, tu ne réécris pas.

A la fin du traitement, tu supprimes dico.txt et tu rename dico2.txt en dico.txt

Re: [..] Effacement un mot dans un fichier texte

Posté : mer. 24 nov. 2010 21:49
par sylvanie
si le fichier peut être buffurisé en un coups
► Afficher le texte
sinon faire une lecture par block