[Résolu]set variable=toto.txt possible ?

Une difficulté, une précision posez vos questions

Modérateur : WIN32-[GG]

Répondre
Joe cateline
Batcheur débutant
Messages : 27
Enregistré le : 07 mars 2011 21:48

[Résolu]set variable=toto.txt possible ?

Message par Joe cateline »

Bonjour,

Ma question est dans le titre, simple je souhaiterais créer une variable qui serait un texte appelé.

Pour vous mettre dans le contexte, je fabrique un jeu qui utilise XP comme environnement (un jeu de rôle uniquement en arbres de dossiers et en batch) et je termine les finissions avec un système de combat virtuel...
En gros dans le dossier "sauvegarde continue" est placé un fichier "points de vie.txt" (contenant 1 ou 2 caractère(s) numérique(s)) qui est modifié à chaque fin de "bat de combat" pour pouvoir le rappeler au début d'un autre combat et éviter un reset de points de vie qui ne serait pas réaliste.

Donc es ce possible de faire un truk du style :

set pv="points de vie.txt"
echo Vous avez %pv% point(s) de vie
J'ai testé avec more, type, >, "", == et en mélangeant les combinaisons mais sans la moindre piste... Sur internet je ne trouve rien, à pars ma persévérance, vous êtes mon seul espoir.
D'avance merci.
Modifié en dernier par Joe cateline le 16 mars 2011 18:07, modifié 1 fois.
plopi
Batcheur débutant
Messages : 16
Enregistré le : 04 mars 2011 00:10

Re: set variable=toto.txt possible ?

Message par plopi »

il faut utiliser la fonction "for" pour ce type de manip :

Code : Tout sélectionner

for /f %i in (points de vie.txt) do set pv=%i
echo %pv%
 
PS : Petit conseil annexe, évite de placer des "espaces" dans les noms de fichier ;) , genre "points de vie.txt" c'est mieux écrit comme ça : points_de_vie.txt

Enjoy
Joe cateline
Batcheur débutant
Messages : 27
Enregistré le : 07 mars 2011 21:48

Re: set variable=toto.txt possible ?

Message par Joe cateline »

Ha ok, je ne suis pas encore très à l'aise avec la commande "FOR", je débute mais merci encore, c'est la seconde fois que tu me viens en aide, merci beaucoup.
Joe cateline
Batcheur débutant
Messages : 27
Enregistré le : 07 mars 2011 21:48

Re: set variable=toto.txt possible ?

Message par Joe cateline »

Mince, je tombe encore sur un os...

la commande marche bien mais si le contenu du texte qui va définir la variable est trop long, ça ne comptera que les 7 premiers caractères du texte.
Dans mon jeu, ce n'est plus les points de vie mais d'autres variables tel que l'arme ou l'armure équipée et là, le texte "armure.txt" contient plus que juste 2 ou 3 chiffres mais une dizaines de caractères.
d'avance merci.
DarkBatcher
King Of Batch
Messages : 66
Enregistré le : 06 juil. 2010 17:37
Contact :

Re: set variable=toto.txt possible ?

Message par DarkBatcher »

hello!

c'est à cause des delims=:

Code : Tout sélectionner

FOR /f "tokens=*" %%I IN(Fichier.txt) Do SET PV=%%i
Ce forum vous à aidé? Faites le vivre en vous connectant régulièrement et en répondant au questions posées sur le forum si vous avez une solution
Joe cateline
Batcheur débutant
Messages : 27
Enregistré le : 07 mars 2011 21:48

Re: set variable=toto.txt possible ?

Message par Joe cateline »

Merci DarkBatcheur, ça marche nickel !
Répondre