Page 1 sur 1
[..] Fusion de fichier
Posté : ven. 01 avr. 2011 22:57
par jusfacat
Bonjour,
Je suis débutant en AutoIt, je voudrais copier plusieurs fichiers .txt d'un même répertoire, dans un seul et même fichier .txt, j'ai essaiyé avec la commande filecopy, mais cette dernière écrase le fichier source. existe t-il une commande qui fusionnerais les fichiers .txt.
Merci pour votre aide.
Re: [..] Fusion de fichier
Posté : ven. 01 avr. 2011 23:09
par Tlem
Ou bien vous lisez le contenu de chaque fichier afin de l'incorporer dans le fichier 'receveur', ou bien vous fusionnez vos fichiers grâce à la commande DOS
COPY.
Pour copy =>
http://www.autoitscript.fr/forum/viewto ... 585#p17585
Pour le reste, lisez le sujet en entier.
Re: [..] Fusion de fichier
Posté : mar. 05 avr. 2011 15:35
par ZDS
Bonjour,
Si possible, modifie proprement ton titre de message (les [..] avant, pas après, et avec 2 points dedans) et ton message aussi (tout le commentaire de départ ^^).
Sinon, voici un script qui prend les 5 fichiers C:\toto?.txt, et les fusionne dans C:\toto.txt :
Code : Tout sélectionner
Local $origines[5] = ["C:\toto1.txt","C:\toto2.txt","C:\toto3.txt","C:\toto4.txt","C:\toto5.txt"]
Local $destination = "C:\toto.txt"
Local $flux_destination = FileOpen($destination, 10) ; 2+8 : effacement du contenu + création du fichier si besoin
If $flux_destination <> -1 Then
For $i = 0 To UBound($origines)-1
Local $flux = FileOpen($origines[$i], 0) ; 0 : lecture seule
If $flux <> -1 Then
Local $contenu = FileRead($flux)
FileWrite($flux_destination, $contenu&@CRLF) ; ajout du contenu à la suite du flux
Else
; Pas de fichier, passage au suivant
EndIf
FileClose($flux)
Next
Else
; Impossible de créer la destination
EndIf
FileClose($flux_destination)
Il est surement à améliorer, mais voici qui te donne une idée de départ pour ton algo
A bientôt !
PS: Ma précédente réponse s'est perdue dans la poubelle, ton ancien message ne correspondait pas aux règles de présentation des messages ^^