Page 1 sur 1

[R] Problème lors de l'utilisation de "FileWriteLine()"

Posté : jeu. 25 mars 2010 17:09
par peuchere83
Bonjour à tous,

J'ai réalisé un programme qui jointe plusieurs fichiers textes en un seul.
Pour cela je lis ligne à ligne chaque fichier avec filereadline, puis je copie cette ligne dans le fichier final avec FileWriteLine.

Mon problème est le suivant : filewriteline me rajoute forcément un saut de ligne après l'écriture de la ligne.

Y a t'il une possibilité pour empêcher cela ?

J'ai essayer d'utiliser _FileWriteToLine pour supprimer cette derniere ligne mais cela ne fonctionne pas.
J'ai essayé aussi FileWriteFromArray et fileWriteToArray pour recréer mon fichier mais le problème est identique.


Quelqu'un a t'il une idée ?

Par avance merci.

Re: [..] Problème lors de l'utilisation de "FileWriteLine()"

Posté : jeu. 25 mars 2010 17:31
par Tlem
Utilisez plutôt le handle d'ouverture de fichier afin d'ouvrir votre fichier d'origine pour ajouter à la fin.
Le but serait de lire votre fichier N°2 dans une variable, puis de rajouter le tout à la fin du fichier N°1. ;)

Code : Tout sélectionner

$File2 = FileRead("Fichier2.txt") ; On lit le fichier N°2

$File1 = FileOpen("Fichier1.txt", 1) ; On ouvre le fichier N°1 en écriture pour ajouter à la fin.

FileWrite($File1, $File2) ; On ajoute le texte du fichier N°2 au fichier N°1

FileClose($File1) ; On ferme le fichier N°1
Sinon, il est possible d'utiliser la commande DOS Copy.

Code : Tout sélectionner

Copy Fichier1.txt + Fichier2.txt Fichier3.txt
Crée le fichier Fichier3.txt qui est le résultat de l'addition du fichier 1 et du fichier 2. ;)

Re: [..] Problème lors de l'utilisation de "FileWriteLine()"

Posté : jeu. 25 mars 2010 18:04
par peuchere83
Parfait !!!

Je te remercie cela fonctionne.

J'ai juste du gérer le rajout du @CRLF entre chaque fichier jointés.

Je ne m'étais jamais encore servi de filewrite de cette manière.

Maintenant mon programme peux donc connaitre le nombre de ligne par fichier, écrire cela dans un fichier excel et jointer le tout dans un seul document sans la ligne vide à la fin.

Encore merci.