Bloc-note : Remplacement de caractéres

Vous voulez de l'aide ? Postez ici :)
Post Reply
Sergent-Quentin
Posts: 274
Joined: 11 Jun 2014, 14:45

Bloc-note : Remplacement de caractéres

Post by Sergent-Quentin »

Bonjour à tous

Vous savez sur le bloc-notes lorsqu'on a une liste comme ceci :
Bloc-note.jpg
Bloc-note.jpg (16.31 KiB) Viewed 2772 times
On peut facilement utiliser l'option " remplacer " qui est très pratique si je veux enlever les " Au revoir " tous d'un coup.
Remplacer.jpg
Remplacer.jpg (11.63 KiB) Viewed 2772 times
Mais ce qui serait encore mieux, c'est de pouvoir faire tout ceci sans ouvrir le bloc-note ( comme l'action " Ecriture fichier texte " ou " Lire ficher texte " ), en faite si je demande ceci c'est parce-que souvent je dois filtrer des bloc-notes avec les mêmes mots à enlever, c'est pour cela que si il est possible de faire un script pour cela ça me serait très utile :D ( et pour d'autres aussi je pense :D, je suis fégniant Mais dans le bon sens :lol: )

Je vous remercie pour vos réponses

Cordialement

Sergent-Quentin
User avatar
Jmgr
Admin
Posts: 1650
Joined: 07 Dec 2005, 15:45
Contact:

Re: Bloc-note : Remplacement de caractéres

Post by Jmgr »

Tu peux lire le fichier avec l'action correspondante, supprimer les mots que tu veux avec un bout de code et écrire le fichier avec l'action du même nom.
Par exemple, pour le code :

Code: Select all

var texte = "Au revoir\n" +
"Au revoir\n" +
"Salut\n" +
"Au revoir\n" +
"Au revoir\n" +
"Salut\n" +
"Au revoir\n" +
"Au revoir\n" +
"Au revoir\n" +
"Au revoir\n";

texte = texte.replace(/Au revoir\n/g, "");
"My software never has bugs. It just develops random features."
Sergent-Quentin
Posts: 274
Joined: 11 Jun 2014, 14:45

Re: Bloc-note : Remplacement de caractéres

Post by Sergent-Quentin »

Bonsoir

j'ai testé et ça fonctionne :)

En revanche il est nécessaire d'avoir une copie du bloc-note dans le code pour conserver tous les " Salut " ?
Violette
Posts: 119
Joined: 10 Aug 2014, 17:42

Re: Bloc-note : Remplacement de caractéres

Post by Violette »

Tu lit le fichier et tu stockes le résultat dans une variable.
Sergent-Quentin
Posts: 274
Joined: 11 Jun 2014, 14:45

Re: Bloc-note : Remplacement de caractéres

Post by Sergent-Quentin »

Je up ce sujet car il est inutile de créer un autre pour ça.

Mon script :

1- Il demande à l'utilisateur via des interfaces ( Entrée de données ) d'entrer des informations qui seront stocker sous différentes variables ( entre parenthésées ) :

[Nom du produit] ( var = Titre )
Couleur du produit ( var = Couleur )
Prix ( var = Prix )
État du produit ( var = Etat )

2 - Le script écrit toutes ses infos avec l'action "Écrire fichier texte" dans un bloc-note :

[$Titre]
$Couleur
$Prix
$Etat
#Fin

Mon problème :

Je voudrais rajouter une option qui permet de modifier une information dans le bloc-note à une ligne précise (modifier un prix par exemple), j'ai d’abord fait ceci :

1- Le script récupère tous les titres ( lorsque que la ligne contient "[" il l'écrit dans un bloc-note qui servira à afficher tous les titres )
2- Je sélectionne le produit que je veux modifier
3- Il me propose de modifier un des 4 éléments
4- Je bloque...

J'ai penser avec la fonction .replace mais je ne peux pas mettre de variable...

Je sais que l'explication est flou, c'est pourquoi j'ai rajouter le script, tout ce que je veux c'est pouvoir modifier le prix par exemple, via l'interface ( c'est ce qui manque ).

Attention : Penser à modifier les chemins pour les fichiers texte ( Créer vous 3 fichiers bloc-notes : Liste, Memoire, Choix )

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<scriptfile>
    <settings program="actionaz" version="3.8.0" scriptVersion="1.1.0" os="Windows"/>
    <actions>
        <action name="ActionDataInput" version="1.0.0"/>
        <action name="ActionGoto" version="1.0.0"/>
        <action name="ActionNoop" version="1.0.0"/>
        <action name="ActionCode" version="1.0.0"/>
        <action name="ActionVariable" version="1.0.0"/>
        <action name="ActionReadTextFile" version="1.0.0"/>
        <action name="ActionWriteTextFile" version="1.0.0"/>
        <action name="ActionVariableCondition" version="1.0.0"/>
        <action name="ActionMultiDataInput" version="1.0.0"/>
    </actions>
    <parameters/>
    <resources/>
    <script pauseBefore="0" pauseAfter="0">
        <action name="ActionMultiDataInput" label="Menu">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="maximumChoiceCount">
                <subParameter name="value" code="0">1</subParameter>
            </parameter>
            <parameter name="mode">
                <subParameter name="value" code="0">radioButton</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Menu</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">Que veux-tu faire ?</subParameter>
            </parameter>
            <parameter name="items">
                <subParameter name="value" code="0">Ajouter une annonce
Gestionnaire d'annonce(s)
</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
        </action>
        <action name="ActionCode">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="code">
                <subParameter name="value" code="1">if (Menu=="Ajouter une annonce") {
Script.nextLine = "Titre";
}
else if (Menu=="Gestionnaire d'annonce(s)") {
Script.nextLine = "Ligne = 0";
}</subParameter>
            </parameter>
        </action>
        <action name="ActionNoop" label="Informations" comment="Informations" color="#00ff00">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
        </action>
        <action name="ActionDataInput" label="Titre">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="dataType">
                <subParameter name="value" code="0">text</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Titre</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">Nom du produit :</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
        </action>
        <action name="ActionDataInput" label="Couleur">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="dataType">
                <subParameter name="value" code="0">text</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Couleur</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">Couleur de produit</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
        </action>
        <action name="ActionDataInput" label="Prix">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="dataType">
                <subParameter name="value" code="0">decimal</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Prix</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">Prix :</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
        </action>
        <action name="ActionDataInput" label="Etat">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="dataType">
                <subParameter name="value" code="0">text</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Etat</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">Etat du produit :</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
        </action>
        <action name="ActionWriteTextFile" label="Ecriture des informations">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="mode">
                <subParameter name="value" code="0">truncate</subParameter>
            </parameter>
            <parameter name="file">
                <subParameter name="value" code="0">C:/Users/Quentinou/Desktop/Liste.txt</subParameter>
            </parameter>
            <parameter name="text">
                <subParameter name="value" code="0">[$Titre]
$Couleur
$Prix
$Etat
#Fin</subParameter>
            </parameter>
        </action>
        <action name="ActionGoto" label="Aller à : Menu">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="line">
                <subParameter name="value" code="0">Menu</subParameter>
            </parameter>
        </action>
        <action name="ActionNoop" label="Gestionnaire" comment="Gestionnaire" color="#00ff00">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
        </action>
        <action name="ActionVariable" label="Ligne = 0">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="colorValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Ligne</subParameter>
            </parameter>
            <parameter name="type">
                <subParameter name="value" code="0">integer</subParameter>
            </parameter>
            <parameter name="value">
                <subParameter name="value" code="0">0</subParameter>
            </parameter>
            <parameter name="positionValue">
                <subParameter name="unit" code="0">0</subParameter>
                <subParameter name="value" code="0"></subParameter>
            </parameter>
        </action>
        <action name="ActionWriteTextFile" label="Effacement de la mémoire">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="mode">
                <subParameter name="value" code="0">truncate</subParameter>
            </parameter>
            <parameter name="file">
                <subParameter name="value" code="0">C:/Users/Quentinou/Desktop/Memoire.txt</subParameter>
            </parameter>
            <parameter name="text">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
        </action>
        <action name="ActionVariable" label="Ligne + 1">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="colorValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Ligne</subParameter>
            </parameter>
            <parameter name="positionValue">
                <subParameter name="unit" code="0">0</subParameter>
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="value">
                <subParameter name="value" code="1">Ligne + 1</subParameter>
            </parameter>
            <parameter name="type">
                <subParameter name="value" code="0">integer</subParameter>
            </parameter>
        </action>
        <action name="ActionReadTextFile" label="Infos">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="firstline">
                <subParameter name="value" code="1">Ligne</subParameter>
            </parameter>
            <parameter name="mode">
                <subParameter name="value" code="0">selection</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Infos</subParameter>
            </parameter>
            <parameter name="file">
                <subParameter name="value" code="0">C:/Users/Quentinou/Desktop/Liste.txt</subParameter>
            </parameter>
            <parameter name="lastline">
                <subParameter name="value" code="1">Ligne</subParameter>
            </parameter>
        </action>
        <action name="ActionVariableCondition" label="Si c'est [">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="ifEqual">
                <subParameter name="line" code="0">Ecriture dans la mémoire</subParameter>
                <subParameter name="action" code="0">goto</subParameter>
            </parameter>
            <parameter name="comparison">
                <subParameter name="value" code="0">contains</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Infos</subParameter>
            </parameter>
            <parameter name="value">
                <subParameter name="value" code="0">[</subParameter>
            </parameter>
            <parameter name="ifDifferent">
                <subParameter name="line" code="0">Si c'est #Fin</subParameter>
                <subParameter name="action" code="0">goto</subParameter>
            </parameter>
        </action>
        <action name="ActionVariableCondition" label="Si c'est #Fin">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="ifEqual">
                <subParameter name="line" code="0">Memoire</subParameter>
                <subParameter name="action" code="0">goto</subParameter>
            </parameter>
            <parameter name="comparison">
                <subParameter name="value" code="0">contains</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Infos</subParameter>
            </parameter>
            <parameter name="value">
                <subParameter name="value" code="0">#Fin</subParameter>
            </parameter>
            <parameter name="ifDifferent">
                <subParameter name="line" code="0">Ligne + 1</subParameter>
                <subParameter name="action" code="0">goto</subParameter>
            </parameter>
        </action>
        <action name="ActionMultiDataInput" label="Liste">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="maximumChoiceCount">
                <subParameter name="value" code="0">1</subParameter>
            </parameter>
            <parameter name="mode">
                <subParameter name="value" code="0">list</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Liste</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">Quel annonce veux-tu modifier ?</subParameter>
            </parameter>
            <parameter name="items">
                <subParameter name="value" code="0">$Infos
</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
        </action>
        <action name="ActionWriteTextFile" label="Ecriture dans la mémoire">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="mode">
                <subParameter name="value" code="0">append</subParameter>
            </parameter>
            <parameter name="file">
                <subParameter name="value" code="0">C:/Users/Quentinou/Desktop/Memoire.txt</subParameter>
            </parameter>
            <parameter name="text">
                <subParameter name="value" code="0">$Infos
</subParameter>
            </parameter>
        </action>
        <action name="ActionGoto" label="Aller à : Ligne + 1">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="line">
                <subParameter name="value" code="0">Ligne + 1</subParameter>
            </parameter>
        </action>
        <action name="ActionReadTextFile" label="Memoire">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="firstline">
                <subParameter name="value" code="0">1</subParameter>
            </parameter>
            <parameter name="mode">
                <subParameter name="value" code="0">full</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Memoire</subParameter>
            </parameter>
            <parameter name="file">
                <subParameter name="value" code="0">C:/Users/Quentinou/Desktop/Memoire.txt</subParameter>
            </parameter>
            <parameter name="lastline">
                <subParameter name="value" code="0">1</subParameter>
            </parameter>
        </action>
        <action name="ActionMultiDataInput" label="Gestionnaire d'annonce">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="maximumChoiceCount">
                <subParameter name="value" code="0">1</subParameter>
            </parameter>
            <parameter name="mode">
                <subParameter name="value" code="0">list</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Annonce</subParameter>
            </parameter>
            <parameter name="items">
                <subParameter name="value" code="0">$Memoire
</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">Annonce(s) :</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0">Annonce(s) enregistrée(s)</subParameter>
            </parameter>
        </action>
        <action name="ActionMultiDataInput" label="Modification">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="maximumChoiceCount">
                <subParameter name="value" code="0">9</subParameter>
            </parameter>
            <parameter name="mode">
                <subParameter name="value" code="0">checkbox</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Modification</subParameter>
            </parameter>
            <parameter name="items">
                <subParameter name="value" code="0">Modifier le titre
Modifier la couleur
Modifier le prix
Modifier l'état
</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">Que veux-tu faire ?

Annonce : $Annonce
</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0">Modification</subParameter>
            </parameter>
        </action>
        <action name="ActionVariable" label="ctr = 0">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="colorValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">ctr</subParameter>
            </parameter>
            <parameter name="positionValue">
                <subParameter name="unit" code="0">0</subParameter>
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="value">
                <subParameter name="value" code="0">0</subParameter>
            </parameter>
            <parameter name="type">
                <subParameter name="value" code="0">integer</subParameter>
            </parameter>
        </action>
        <action name="ActionVariableCondition" label="Condition ctr">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="ifEqual">
                <subParameter name="line" code="0"></subParameter>
                <subParameter name="action" code="0">do_nothing</subParameter>
            </parameter>
            <parameter name="comparison">
                <subParameter name="value" code="0">inferior</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">ctr</subParameter>
            </parameter>
            <parameter name="ifDifferent">
                <subParameter name="line" code="0">Lecture modifications</subParameter>
                <subParameter name="action" code="0">goto</subParameter>
            </parameter>
            <parameter name="value">
                <subParameter name="value" code="1">Modification.length</subParameter>
            </parameter>
        </action>
        <action name="ActionWriteTextFile" label="Ecriture du choix">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="mode">
                <subParameter name="value" code="0">truncate</subParameter>
            </parameter>
            <parameter name="file">
                <subParameter name="value" code="0">C:/Users/Quentinou/Desktop/Choix.txt</subParameter>
            </parameter>
            <parameter name="text">
                <subParameter name="value" code="1">Modification[ctr]</subParameter>
            </parameter>
        </action>
        <action name="ActionVariable" label="ctr + 1">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="colorValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">ctr</subParameter>
            </parameter>
            <parameter name="positionValue">
                <subParameter name="unit" code="0">0</subParameter>
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="value">
                <subParameter name="value" code="1">ctr+1</subParameter>
            </parameter>
            <parameter name="type">
                <subParameter name="value" code="0">integer</subParameter>
            </parameter>
        </action>
        <action name="ActionGoto" label="Aller à : Condition ctr">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="line">
                <subParameter name="value" code="0">Condition ctr</subParameter>
            </parameter>
        </action>
        <action name="ActionReadTextFile" label="Lecture modifications">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="firstline">
                <subParameter name="value" code="1">ctr</subParameter>
            </parameter>
            <parameter name="mode">
                <subParameter name="value" code="0">selection</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Modification</subParameter>
            </parameter>
            <parameter name="file">
                <subParameter name="value" code="0">C:/Users/Quentinou/Desktop/Choix.txt</subParameter>
            </parameter>
            <parameter name="lastline">
                <subParameter name="value" code="1">ctr</subParameter>
            </parameter>
        </action>
        <action name="ActionCode" label="Condition modification">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="code">
                <subParameter name="value" code="1">if (Modification=="Modifier le titre") {
var Texte = "Nouveau titre :"
}
else if (Modification=="Modifier la couleur") {
var Texte = "Nouvelle couleur :";
}
else if (Modification=="Modifier le prix") {
var Texte = "Nouveau prix :";
}
else if (Modification=="Modifier l'état") {
var Texte = "Nouvel etat :";
}</subParameter>
            </parameter>
        </action>
        <action name="ActionDataInput" label="Modifier">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="dataType">
                <subParameter name="value" code="0">text</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Modification</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">$Texte</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0">$Annonce</subParameter>
            </parameter>
        </action>
    </script>
</scriptfile>
Je vous remercie.
User avatar
Jmgr
Admin
Posts: 1650
Joined: 07 Dec 2005, 15:45
Contact:

Re: Bloc-note : Remplacement de caractéres

Post by Jmgr »

Je n'ai pas le temps de tester maintenant, mais si tu veux stocker des infos dans un fichier sous la forme nom=valeur alors tu ferais mieux d'utiliser le format INI (voir les deux actions associées), qui sert exactement à ça.
"My software never has bugs. It just develops random features."
Sergent-Quentin
Posts: 274
Joined: 11 Jun 2014, 14:45

Re: Bloc-note : Remplacement de caractéres

Post by Sergent-Quentin »

Jmgr wrote:Je n'ai pas le temps de tester maintenant, mais si tu veux stocker des infos dans un fichier sous la forme nom=valeur alors tu ferais mieux d'utiliser le format INI (voir les deux actions associées), qui sert exactement à ça.
Dac je vais voir ce que c'est ^^ merci :)

Sinon si toi ou quelqu'un d'autre à le temps de s'occuper de mon petit problème n'hésitez pas :p

Merci à tous :)
Violette
Posts: 119
Joined: 10 Aug 2014, 17:42

Re: Bloc-note : Remplacement de caractéres

Post by Violette »

Tu peux stocker tes infos dans un fichier INI sous cette forme :

Code: Select all

id={"titre" : "", "couleur" : "", "prix" : "", "etat" : ""}
Ainsi tu pourras accéder aux propriétés de tes items via id.titre (id.couleur, id.prix, id.etat) ou id["titre"] (id["couleur"], id["prix"], id["etat"]). Cependant il te faudra stocker la correspondance titre=id quelque part.

Sinon tu peux stocker tes données comme ceci :

Code: Select all

titre={"couleur" : "", "prix" : "", "etat" : ""}
Les titres de tes items peuvent contenir des symboles (@-'). Attention cependant a filtrer le symbole # et à le supprimer sinon il fera planter le script. Tu pourras accéder aux valeurs via titre.couleur, ou plutôt Obj["titre"].couleur. Obj étant le nom de la variable récupérant l'objet.

Je n'ai pas regardé le fonctionnement de ton script, mais voilà ce que je ferais.

Première étape, on charge le contenu du fichier dans un tableau, comme ça on garde le détails de tout les items en mémoire sans avoir besoin de constamment aller chercher l'information dans le fichier INI. Si il y a 100 000 items ça fera un grand tableau mais de toute façon, un fichier INI n'est pas fait pour stocker autant d'informations donc bon.

Code: Select all

var lectureFichierIni = new IniFile().load("test.ini"), values = [], test = true, key = 0; //Chargement du fichier INI, tableau vide qui servira a stocker les items, condition de boucle, key du fichier INI

while (test === true) { //Tant que test = true, on continue
	if (lectureFichierIni.keyExists(key)) { //Si il existe la key dans le fichier INI, 0 au premier passage
		values[key] = JSON.parse(lectureFichierIni.keyValue(key)); //On récupère la valeur et on la parse en JSON
		key++; //On incrémente la key de 1
	} else //Si la key n'existe pas dans le fichier INI
		test = false; //On stop la boucle
}

Ce code est pas terrible, car si une ligne est supprimé, donc qu'un id manque, la boucle s’arrête mais il y a un bug ^^, cependant, il est possible de compter le nombre de key en manipulant le fichier INI comme un simple fichier texte, si tu as vraiment besoin.

Ensuite, on manipule ce tableau, par exemple pour chercher un item avec son titre :

Code: Select all

var search = "bébé", resultSearch = []; //Titre recherché, stockage des résultat dans un tableau

for (var i = 0; i < values.length; i++) { //On boucle sur le tableau contenant le fichier INI
	if (values[i].titre == search) //Si le titre est égale à la recherche
		resultSearch.push(values[i]); //On ajoute la valeur dans le tableau resultSearch
}

for (var i = 0; i < resultSearch.length; i++) { //Boucle sur le tableau resultSearch pour lire les résultats
	Console.print(resultSearch[i].titre + " " + resultSearch[i].couleur + " " + resultSearch[i].etat);
}
Utilisation d'un tableau pour stocker les données dans le cas où certains items auraient un titre identique. Si les titres sont uniques, ben pas besoin de tableau, merci Cap'tain Obvious !

Pour chercher tout les items ayant un prix supérieurs à 10 euros :

Code: Select all

var search2 = 10, resultSearch2 = [];

for (var i = 0; i < values.length; i++) {
	if (values[i].prix > search2) 
		resultSearch2.push(values[i]);
}

for (var i = 0; i < resultSearch2.length; i++) {
	Console.print(resultSearch2[i].titre);
}
Ici, même principe.

EDIT : Contenu du fichier INI :

Code: Select all

0={"titre" : "herbe", "couleur" : "rouge", "prix" : "3", "etat" : "bloc"}
1={"titre" : "bébé", "couleur" : "bleue", "prix" : "300", "etat" : "cuit"}
2={"titre" : "bébé", "couleur" : "violet", "prix" : "1", "etat" : "congelé"}
3={"titre" : "nuage", "couleur" : "vert", "prix" : "45", "etat" : "emprisonné"}
Sergent-Quentin
Posts: 274
Joined: 11 Jun 2014, 14:45

Re: Bloc-note : Remplacement de caractéres

Post by Sergent-Quentin »

Merci de m'avoir répondu, j'ai lu le tout et j'avoue que j'ai du mal à m'en sortir ( même en aillant jeter un coup d’œil ici ^^ http://openclassrooms.com/courses/enreg ... ichier-ini)

Comme je ne connais rien du tout il me faudrait un certain exemple :

J'ai fait un mini-script comportant :

- 3 entrées de données ( Livre, Pages, Poids )
- Écriture fichier ini ( avec comme valeur les 3 entrées de données )

Donc en clair on référence un livre et dans le fichier INI ça apparaît (comme vous l'avez pu devinez ) comme ça :

[Livres pour enfants]
BD = "Tintin
56
130"

Pour commencer, je voudrais juste qu'une action "liste de sélection" qui apparaisse avec toutes les "Sections" à l’intérieur ( en admettant qu'il y en a plusieurs ).
Je pense que le code ne sera pas trop difficile à comprendre ^^ ( du moins je l'espère XD )

Voici mon script :

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<scriptfile>
    <settings program="actionaz" version="3.8.0" scriptVersion="1.1.0" os="Windows"/>
    <actions>
        <action name="ActionDataInput" version="1.0.0"/>
        <action name="ActionWriteIniFile" version="1.0.0"/>
    </actions>
    <parameters/>
    <resources/>
    <script pauseBefore="0" pauseAfter="0">
        <action name="ActionDataInput" label="Titre">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="dataType">
                <subParameter name="value" code="0">text</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Titre</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">Titre :</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0">Titre du livre</subParameter>
            </parameter>
        </action>
        <action name="ActionDataInput" label="Pages">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="dataType">
                <subParameter name="value" code="0">integer</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Pages</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">Pages :</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0">Nombre de pages</subParameter>
            </parameter>
        </action>
        <action name="ActionDataInput" label="Poids">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="defaultValue">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="windowIcon">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="dataType">
                <subParameter name="value" code="0">text</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">Poids</subParameter>
            </parameter>
            <parameter name="question">
                <subParameter name="value" code="0">Poids (g) :</subParameter>
            </parameter>
            <parameter name="windowTitle">
                <subParameter name="value" code="0">Poids du livre</subParameter>
            </parameter>
        </action>
        <action name="ActionWriteIniFile" label="Ecriture des données">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="section">
                <subParameter name="value" code="0">Livres pour enfants</subParameter>
            </parameter>
            <parameter name="value">
                <subParameter name="value" code="0">$Titre
$Pages
$Poids</subParameter>
            </parameter>
            <parameter name="file">
                <subParameter name="value" code="0">C:/Users/Quentinou/Desktop/Bibliothéque.ini</subParameter>
            </parameter>
            <parameter name="parameter">
                <subParameter name="value" code="0">BD</subParameter>
            </parameter>
        </action>
    </script>
</scriptfile>
Je vous remercie

Cordialement

Sergent-Quentin
Violette
Posts: 119
Joined: 10 Aug 2014, 17:42

Re: Bloc-note : Remplacement de caractéres

Post by Violette »

[Livres pour enfants]
BD = "Tintin
56
130"
Tu ne pourras pas récupérer les données avec une structure de ce type.
Tu doit écrire ça comme ça :

Code: Select all

[Livres pour enfants]
type=bd
titre=Tintin
pages=56
poids=130
Ou encore

Code: Select all

[Tintin]
categorie=livres pour enfants
type=bd
pages=56
poids=130
Néanmoins je te conseille vivement de choisir une structure de ce type pour faciliter la future lecture

Code: Select all

[Livres pour enfants]
0={"titre" : "Tintin", "type" : "bd", "pages" : "56", "poids" : "130"}
Tient voici un exemple de code qui permet d'enregistrer des données sous cette forme dans un fichier ini

Code: Select all

var iniFileName = "livre.ini";

function insert(section, titre, pages, poids) {
	var _ini = new IniFile();

	try {
		_ini = _ini.load(iniFileName);
	} catch (error) {}

	function key() {
		return 0; //Fonction générant la key, à faire
	}
	_ini.setSection(section).setKeyValue(key(), '{"titre" : "' + titre + '", "pages" : "' + pages + '", "poids" : "' + poids + '"}');
	_ini.save(iniFileName);
}

insert("Livres pour enfants", titre, pages, poids);
Cf post précédant pour récupérer les données.
Post Reply