[R] "_FileWriteToligne" en fin de ligne

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
yohan8
Niveau 6
Niveau 6
Messages : 245
Enregistré le : mer. 07 déc. 2011 22:34
Localisation : Rhône
Status : Hors ligne

[R] "_FileWriteToligne" en fin de ligne

#1

Message par yohan8 »

Bonjour,

J'aimerais écrire du texte en fin de la première ligne d'un fichier .txt.

Pour écrire sur la première ligne j'utilise "_FileWriteToLine" mais je ne trouve pas la commande qui me permet d'écrire à la fin du texte déjà écrit sur la première ligne de mon fichier sans l’effacer ni sauter de ligne.

Par exemple au début de mon script j’écris dans un fichier "Début du script. $n action à effectué,".
Puis lorsque mon script ce termine j'écris à la fin du texte déjà écrit auparavant "[..à effectué.] $z action réussi."


Yohan :)
Modifié en dernier par yohan8 le sam. 23 mars 2013 19:29, modifié 1 fois.
lesolutionneur
Niveau 7
Niveau 7
Messages : 368
Enregistré le : ven. 09 déc. 2011 11:25
Status : Hors ligne

Re: [..] "_FileWriteToligne" en fin de ligne

#2

Message par lesolutionneur »

Normalement, ça devrait automatiquement ajouter à la fin.

Code : Tout sélectionner

;Example: Write to line 3 of c:\test.txt NOT REPLACING line 3
_FileWriteToLine("c:\test.txt", 3, "my insertion", 0)
Cf --> _FileWriteToLine
Avatar du membre
yohan8
Niveau 6
Niveau 6
Messages : 245
Enregistré le : mer. 07 déc. 2011 22:34
Localisation : Rhône
Status : Hors ligne

Re: [..] "_FileWriteToligne" en fin de ligne

#3

Message par yohan8 »

Oui le texte de la ligne précisé n'est pas remplacé par le nouveau texte. En revanche elle est descendu d'une ligne pour laisser la ligne précisé vierge pour écrire le texte désiré.
Avatar du membre
parazitenew
Niveau 7
Niveau 7
Messages : 310
Enregistré le : sam. 10 déc. 2011 15:08
Localisation : Algerie
Status : Hors ligne

Re: [..] "_FileWriteToligne" en fin de ligne

#4

Message par parazitenew »

C'est:

Code : Tout sélectionner

FileWrite ( "filehandle/filename", "text/data" )
Mais elle ne rajoute pas d'espace entre le nouveau texte et l'ancien, donc tu dois l'inserrer toi même. Entre les guillements et la première lettre:

Code : Tout sélectionner

FileWrite ( "c:\test.txt" , "[b] texte[/b]" )
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [R] "_FileWriteToligne" en fin de ligne

#5

Message par Tlem »

Vous devez d'abord lire la ligne concernée dans une variable, puis réécrire la ligne entière + ce que vous cherchez a rajouter.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
yohan8
Niveau 6
Niveau 6
Messages : 245
Enregistré le : mer. 07 déc. 2011 22:34
Localisation : Rhône
Status : Hors ligne

Re: [R] "_FileWriteToligne" en fin de ligne

#6

Message par yohan8 »

Effectivement car la fonction filewrite me permet d'écrire à la suite le texte désiré mais à la fin de mon fichier. Or c'est bien sur le première ligne que je désire écrire.

Je suis donc obligé de lire la première ligne avec la fonction filereadline et la réécrire en rajoutant le texte voulu.

Code : Tout sélectionner

#include <File.au3>
FileWriteLine("test.txt","ligne 1")
FileWriteLine("test.txt","ligne 2")
FileWriteLine("test.txt","ligne 3")

$ligne1 = FileReadLine("test.txt",1)
_FileWriteToLine("test.txt",1,$ligne1&". Fin de ligne 1")
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [R] "_FileWriteToligne" en fin de ligne

#7

Message par Tlem »

Hé oui, vous avez tout compris.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Répondre