#include <File.au3>
$Path = @ScriptDir & "\essai.txt"
$File = FileOpen ("essai.txt")
For $i = 1 To _FileCountLines ($Path)
$line = FileReadLine ($File,$i)
$rep = StringSplit ($line,"/")
_FileWriteToLine ($Path,$i,$rep[1],1)
Next
Tentez avec ce code
Cordialement Pop45
Veuillez agrée nos sentiment les plus distinguer, soyez assurer de mon entièr et amical collaboration, bien a vous pour toujours et a jamais dans l'unique but de servir l'espérance de votre satisfaction.
c'est en partie parce que vous travaillez ligne par ligne et que vous lancez une écriture de fichier à chaque ligne. Un peu comme si vous utilisiez un camion pour déménager, mais vous ne prenez qu'un carton par voyage.
$Path = @ScriptDir&"\dicofr2.txt"
$File = FileOpen ($Path,0)
$out_file=FileOpen(@TempDir&"\tmpwork",2)
$taille_block=500 ; on va lire / écrire par paquets de 500 lignes
While 1
$block=""
For $ind=1 to $taille_block
$block&=FileReadLine($File)&@CRLF
$err=@error
if $err=-1 Then ExitLoop
Next
$rep = StringRegExpReplace($block,"/.*","")
FileWrite($out_file,$rep)
If $err=-1 Then ExitLoop
WEnd
FileClose($File)
FileClose($out_file)
FileMove(@TempDir&"\tmpwork",$Path,1)
mettez des timers sur les deux méthodes pour mesurer la différence.
[edit] : au fait q'appelez vous "gros" ? Si le fichier ne dépasse pas 50Mo par exple, ne bouclez plus et faites un seule fileread ...
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.