[R] Ecrire dans un fichier si lignes n'existent pas

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
corrs78
Niveau 5
Niveau 5
Messages : 160
Enregistré le : lun. 13 août 2007 17:38
Localisation : Yvelines
Status : Hors ligne

[R] Ecrire dans un fichier si lignes n'existent pas

#1

Message par corrs78 »

Bonjour,

j'ai besoin de faire un petit script qui écrit dans une fichier " *.properties "
j'ai bien tenté d'utiliser les fonction FileWriteLine() ou _FileWritetoline() mais je n'obtiens pas satisfaction.

concrètement, il faut que Je vérifie si 4 lignes existent et si ce n'est pas le cas
il faut que je les insère (peut importe l'endroit)
Ce fichier comporte d'autres lignes (paramètres qui peuvent varier) qui doivent évidement ne pas être écrasées

Merci pour votre concours.

Cdlt.
Modifié en dernier par corrs78 le lun. 03 févr. 2014 18:28, modifié 2 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Ecrire dans un fichier si lignes n'existent pas

#2

Message par Tlem »

Ces 3 lignes sont elles identifiées et fixes ?
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
corrs78
Niveau 5
Niveau 5
Messages : 160
Enregistré le : lun. 13 août 2007 17:38
Localisation : Yvelines
Status : Hors ligne

Re: [..] Ecrire dans un fichier si lignes n'existent pas

#3

Message par corrs78 »

Et non justement c'est bien ça la difficulté. Selon les para métrages de l'application il y a plus ou moins de ligne (entre 3 et 10) et elles ne sont pas forcément à la même place, même si ce dernier critère n'a pas d'importance.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Ecrire dans un fichier si lignes n'existent pas

#4

Message par Tlem »

Alors sur quoi comptez vous vous baser pour savoir si telle ou telle ligne est présente ?
Y à t-il un ou plusieurs éléments fixes ?

Edit : Un exemple concret de deux situations serait d'un grand secours pour minimiser les questions futures.
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
corrs78
Niveau 5
Niveau 5
Messages : 160
Enregistré le : lun. 13 août 2007 17:38
Localisation : Yvelines
Status : Hors ligne

Re: [..] Ecrire dans un fichier si lignes n'existent pas

#5

Message par corrs78 »

Désolé je n'avais pas compris la question. En fait le numéro de la ligne importe peu mais ces trois lignes ont en effet une valeur fixe. Elles ne changent jamais. Mais par contre dans le fichier présent il y a une plusieurs lignes fixes qui peuvent êtres la ou pas en fonction des paramètres valides manuellement dans l'applications. Je vous donne un exemple concret des lundi si vous souhaitez. Désolé si je suis confus
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Ecrire dans un fichier si lignes n'existent pas

#6

Message par mikell »

C'est effectivement confus
Ce qu'il faut obligatoirement savoir c'est LE critère/mot/phrase/string qui permet de définir *précisément* la ligne en question - sans risque de confusion avec une autre - et donc de détecter sa non-existence éventuelle
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
corrs78
Niveau 5
Niveau 5
Messages : 160
Enregistré le : lun. 13 août 2007 17:38
Localisation : Yvelines
Status : Hors ligne

Re: [..] Ecrire dans un fichier si lignes n'existent pas

#7

Message par corrs78 »

Bonjour, comme convenu voici le "fichier type" que je modifier (ou pas) :

Code : Tout sélectionner

#Fri Jan 31 11:02:11 CET 2014
locale=fr_FR
spreadsheet=OPEN_OFFICE
[color=#FF0000]proxy.server.port=3128[/color]
[color=#FF0000]proxy.server.url=192.168.1.1[/color]
oo.file=C\:\\Program Files (x86)\\LibreOffice 4.0\\program\\scalc.exe
[color=#FF0000]proxy.use.authentication=true[/color]
[color=#FF0000]proxy.server.used=true[/color]
police.size=SMALL
 
En rouge, ce sont les 4 lignes que je dois impérativement ajouter (seulement dans le cas ou elles n'existeraient pas déjà)
l'ordre de ces lignes importe peu. La "valeur" de ces 4 chaines est invariable.
Les autres lignes sont variables, elle peuvent d'ailleurs ne pas être présentes ou d'autres peuvent être ajoutées (en fonction du paramètrage de l'application concernée par ce "fichier de configuration")

j'espère que maintenant c'est plus clair.

Bonne semaines à tous et merci encore de votre contribution.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Ecrire dans un fichier si lignes n'existent pas

#8

Message par mikell »

Ben voilà !
► Afficher le texte
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
corrs78
Niveau 5
Niveau 5
Messages : 160
Enregistré le : lun. 13 août 2007 17:38
Localisation : Yvelines
Status : Hors ligne

Re: [..] Ecrire dans un fichier si lignes n'existent pas

#9

Message par corrs78 »

C'est parfait. cela fonctionne exactement comme je l’espérais.
En plus j'ai tout à fait compris le code, donc c'est un double merci.

A+
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [R] Ecrire dans un fichier si lignes n'existent pas

#10

Message par jguinch »

Le code fourni par Mikell respecte le cahier des charges, mais que se passe-t-il si deux lignes avec des valeurs différentes sont présentes dans le fichier ?
Exemple :
► Afficher le texte
Le plus propre serait quand même de modifier la ligne existante, non ?
Je dis ça pour aider hein, pas pour critiquer... :P
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [R] Ecrire dans un fichier si lignes n'existent pas

#11

Message par mikell »

Des remarques, des sarcasmes, mais pas de code ? ... tsss :mrgreen:
► Afficher le texte
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Répondre