[R] Rentrer un très grand texte dans une variable

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
drov
Niveau 5
Niveau 5
Messages : 104
Enregistré le : lun. 05 déc. 2011 19:22
Localisation : devant mon ecran
Status : Hors ligne

[R] Rentrer un très grand texte dans une variable

#1

Message par drov »

Bonjour ! J'écris a cette heure presque tardive car je suis confronté a un problème : Je souhaite faire rentrer dans une variable lambda un très très long texte type 30-40 lignes sauf que ! là est tout le problème :

1 : au premier sauté de ligne venu le focus est perdu
2 : comme il y a des guillemet et des "a t'il" du coup les guillemet double " et simples ' sont hors jeu comment délimiter ? Si ce n'est pas possible ce n'est pas grave je ferais un petit rechercher remplacer " en @ ;)

ce qui m'intéresse surtout c'est de garder le focus des sauté de ligne ^^ Merci d'avance de vos réponses
Modifié en dernier par drov le mar. 12 juin 2012 23:51, modifié 3 fois.
Avatar du membre
PandiPanda
Membre émérite
Membre émérite
Messages : 656
Enregistré le : mar. 19 juil. 2011 14:03
Localisation : Bruxelles
Status : Hors ligne

Re: [..] rentrer un très grand texte dans une variable

#2

Message par PandiPanda »

Bonsoir, j'ai pas trop compris votre problème ...
Vous voulez faire quelque chose comme ceci?
► Afficher le texte
Pour les guillemet vous avez 2 chois soit ...
* entourer via des quote, des 'guillemet a une barre' : => $var = ' "ok" '
* mettre encore plus de quote ... : => $var = """ok"""
La seule moralité qui tienne dans un monde cruel est la chance. Impartiale. Équitable. Vraie
Avatar du membre
drov
Niveau 5
Niveau 5
Messages : 104
Enregistré le : lun. 05 déc. 2011 19:22
Localisation : devant mon ecran
Status : Hors ligne

Re: [..] rentrer un très grand texte dans une variable

#3

Message par drov »

Oh oui ça y ressemble bien :) attendez je teste ça ;)

en fait je souhaite mettre ça (entre autres) :
► Afficher le texte
Donc il faudrais que j'ajoute un & _ a chaque retour à la ligne ?
Avatar du membre
PandiPanda
Membre émérite
Membre émérite
Messages : 656
Enregistré le : mar. 19 juil. 2011 14:03
Localisation : Bruxelles
Status : Hors ligne

Re: [..] rentrer un très grand texte dans une variable

#4

Message par PandiPanda »

le &_ est juste pour dire qu'on va concatener la chaine qui suit a la prochaine ligne sur le String.
Donc si vous voulez conserver votre "format" et donc les retour chariot, il faudra le mettre aussi '^^

donc votre exemple deviendra comme ceci;
► Afficher le texte
La seule moralité qui tienne dans un monde cruel est la chance. Impartiale. Équitable. Vraie
Avatar du membre
drov
Niveau 5
Niveau 5
Messages : 104
Enregistré le : lun. 05 déc. 2011 19:22
Localisation : devant mon ecran
Status : Hors ligne

Re: [..] rentrer un très grand texte dans une variable

#5

Message par drov »

Hourra ça marche ^^ bon ça risque de devenir vite très long est fatiguant ^^ je vais tacher de me faire un macro pour cela. Merci !

edit : en fait non pour d'autres textes je galère ^^'

exemple : le début de la tirade du nez de cyrano
► Afficher le texte
Là j'y arrive pas... :/
Avatar du membre
PandiPanda
Membre émérite
Membre émérite
Messages : 656
Enregistré le : mar. 19 juil. 2011 14:03
Localisation : Bruxelles
Status : Hors ligne

Re: [..] rentrer un très grand texte dans une variable

#6

Message par PandiPanda »

le problème venant des quotes '^^

le moyen le plus simple ?
si vous voyez des " , entourer la chaine par des simple quote '

Cependant on peux avoir un mélange des 2, simple et double quote ... donc le moyen le plus sur est d'entourer par des " et d'en mettre plusieurs comme au exemple citer plus haut ...
PandiPanda a écrit :Pour les guillemet vous avez 2 chois soit ...
* entourer via des quote, des 'guillemet a une barre' : => $var = ' "ok" '
* mettre encore plus de quote ... : => $var = """ok"""
La seule moralité qui tienne dans un monde cruel est la chance. Impartiale. Équitable. Vraie
Avatar du membre
drov
Niveau 5
Niveau 5
Messages : 104
Enregistré le : lun. 05 déc. 2011 19:22
Localisation : devant mon ecran
Status : Hors ligne

Re: [..] rentrer un très grand texte dans une variable

#7

Message par drov »

► Afficher le texte
J'ai beau mettre des guillemets il ne me prend pas en compte le texte du millieu :/
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] rentrer un très grand texte dans une variable

#8

Message par mikell »

Heu question idiote, pourquoi écrire le texte dans le script plutôt que le lire depuis un fichier vers une variable ?
" 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
drov
Niveau 5
Niveau 5
Messages : 104
Enregistré le : lun. 05 déc. 2011 19:22
Localisation : devant mon ecran
Status : Hors ligne

Re: [..] rentrer un très grand texte dans une variable

#9

Message par drov »

HHH ! on peut faire ça? ( dégouté de l'apprendre que maintenant ^^)

Certes mais depuis quels fichiers , il lit que les .txt je suppose non?
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Rentrer un très grand texte dans une variable

#10

Message par mikell »

Mets ta tirade de Cyrano dans un fichier "test.inf" et teste ça

Code : Tout sélectionner

Msgbox(0,"", FileRead("test.inf"))
" 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
drov
Niveau 5
Niveau 5
Messages : 104
Enregistré le : lun. 05 déc. 2011 19:22
Localisation : devant mon ecran
Status : Hors ligne

Re: [..] Rentrer un très grand texte dans une variable

#11

Message par drov »

Yay ! ça marche :p

Si je le compile en un .exe il faut que je les laisse dans le même dossier c'est ça ( le fichier inf et le .exe)
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Rentrer un très grand texte dans une variable

#12

Message par mikell »

Le fichier, tu peux l'appeler "test.glou" si tu veux :mrgreen:
Pour la compil, regarde dans l'aide FileInstall
" 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
drov
Niveau 5
Niveau 5
Messages : 104
Enregistré le : lun. 05 déc. 2011 19:22
Localisation : devant mon ecran
Status : Hors ligne

Re: [..] Rentrer un très grand texte dans une variable

#13

Message par drov »

Owais .glou c'est carrément plus cool ^^

Merci je met résolu je ferais un autre topic si je galère avec fileinstall
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2130
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [R] Rentrer un très grand texte dans une variable

#14

Message par TommyDDR »

Astuce pour vos manipulations de chaine hors programme

collez votre code dans Notepad++ (tout bon programmeur se doit de l'avoir ^^)
faite un bon vieux Ctrl+h pour remplacer les " en ""
ensuite, placez le curseur au tout début du fichier et faites comme ceci :
- Cliquez sur le bouton rond rouge "Démarrer l'enregistrement" pour enregistrer une macro
- Appuyez sur la touche FIN
- Inscrivez-y ce qu'il faut ajouter ici :" & @CRLF & _ " (sans les guillemets)
- Appuyez sur la flèche du bas
- Cliquez sur le bouton carré noir "Arrêter l'enregistrement" pour arrêter d'enregistrer la macro
- Cliquez sur le bouton double flèches bleu à droite "Exécuter une macro en boucle"
- Cochez "Jusqu'à la fin du fichier
- Cliquez sur "Executer"

Et voila, vous avez votre texte final
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Répondre