Page 1 sur 1
[R] Ecriture fichier .js
Posté : mar. 08 févr. 2011 10:16
par benzo
Bonjour,
J'ai un ptit souci aléatoire avec l'écriture' dans un fichier .js
En bref je récupère le nom d'un utilisateur dans un input puis lui demande l'écriture
Code : Tout sélectionner
$NOM_UTILISATEUR2 = GUICtrlRead($INPUT_UTIL2)
_FILEWRITETOLINE($FILEPATH, $NBRE_LIGNES + 5, 'user_pref("mail.server.server1.directory","D:\Messagerie\'& $NOM_UTILISATEUR2 & '");')
Dans le fichier .js final au lieu d'avoir un "n" j'ai une ","
donc les "natacha","nathalie" and co , il aime pas ca
Une idée svp?
Re: [...]Ecriture fichier .js
Posté : mar. 08 févr. 2011 10:42
par Laddy
Bonjour
juste pour dire que j'ai testé ton code et je n'ai pas eu de soucis. la ligne est bien créée.
Essaie de controler ton inputbox avec un consolewrite.
Re: [...]Ecriture fichier .js
Posté : mar. 08 févr. 2011 12:00
par benzo
merci de m'avoir répondu
en fait je nai pas de souci de syntaxe ou de récupération de variable
je sais qu'elle est correcte car elle me permet de créer sur le disque D: le dossier avec le nom d'utilisateur correctement écrit
Le problème se situe uniquement lors de l'écriture dans le fichier et uniquement avec la lettre "n" placée en début de nom
Pourquoi
uniquement avec la lettre "n"

Re: [...]Ecriture fichier .js
Posté : mar. 08 févr. 2011 12:29
par GaRydelaMer
Bonjour
Une question ou plutôt un début de réponse:
Certain outils, comme javascript, transforme \n en retour chariot, \t en tabulation etc...
Si tu doubles tes \ dans le chemin tu as la même erreur ?, sinon tu les remplace par /.
\\Nathalie\\Messagerie ou /Nathalie/Messagerie
_FILEWRITETOLINE($FILEPATH, $NBRE_LIGNES + 5, 'user_pref("mail.server.server1.directory","D:\\Messagerie\\'& $NOM_UTILISATEUR2 & '");')
_FILEWRITETOLINE($FILEPATH, $NBRE_LIGNES + 5, 'user_pref("mail.server.server1.directory","D:/Messagerie/'& $NOM_UTILISATEUR2 & '");')
Re: [...] Ecriture fichier .js
Posté : mar. 08 févr. 2011 13:20
par benzo
ca me parait pas mal ca comme explication
je teste ca cet aprem merci
Re: [...]Ecriture fichier .js
Posté : mar. 08 févr. 2011 13:49
par benzo
Ok donc le fait de doubler les "\" semble résoudre le problème
merci Gary
Code : Tout sélectionner
_FILEWRITETOLINE($FILEPATH, $NBRE_LIGNES + 5, 'user_pref("mail.server.server1.directory","D:\\Messagerie\\'& $NOM_UTILISATEUR2 & '");')
Re: [R] Ecriture fichier .js
Posté : mar. 08 févr. 2011 14:33
par GaRydelaMer
De rien.
Le fait de doubler le \ permet de l'échapper, c-a-d qu'il soit interpréter comme un caractère normal, et non pas comme une expression.
Sous Autoit dans les chaine de caractère on doubles les " pour les échapper $toto = "toto dit:""je t'aime AutoIt"""
$toto contient alors: toto dit:"je t'aime AutoIt"
Remarque on échappe aussi dans les regexp avec le \