Récupérer la valeur de plusieurs variables [Résolu]

Signaler
Messages postés
38
Date d'inscription
dimanche 17 novembre 2019
Statut
Membre
Dernière intervention
5 mai 2021
-
Messages postés
13422
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
9 mai 2021
-
Bonjour,
suite a la dernier question poser, j'ai remarquer qu'elle n'était pas asser précise et que mon code ne facilité pas la résolution du problème.

Donc la situation c'est que j'ai fait un programme, il doit utiliser un fichier texte pour sauvegarder plusieurs variable pour ensuite les réutiliser lors la prochaine fois que je utiliser le programme. voici mon code
@echo off

:charger
for /f "tokens=1 delims=;" %%a in (a.txt) do set un=%%a
for /f "tokens=2 delims=;" %%a in (a.txt) do set deux=%%a
for /f "tokens=3 delims=;" %%a in (a.txt) do set trois=%%a

if not defined un goto :creer
if not defined deux goto :creer
if not defined trois goto :creer

goto :programe

:creer
set /p un=ma valeur 1
set /p deux=ma valeur 2
set /p trois=ma valeur 3

:programe
echo ma variable 1 %un%
echo ma variable 2 %deux%
echo ma variable 3 %trois%
pause>nul

:sauvegarder
echo %un% %deux% %trois% >>a.txt

exit


EDIT : Ajout du LANGAGE dans les balises de code pour avoir la coloration syntaxique, la numérotation des ligne et l'indentation

Quand j'utilise mon code sa me met toutes les valeur dans ma premier variable, or je veux que chaque valeur soit réattribué pour chaque variable.
Merci pour votre réponse.

2 réponses

Messages postés
13422
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
9 mai 2021
4 332
Bonjour,

Est-ce que c'est mieux comme ça :
@echo off

:charger
for /f "tokens=1 delims=;" %%a in (a.txt) do set un=%%a
for /f "tokens=2 delims=;" %%a in (a.txt) do set deux=%%a
for /f "tokens=3 delims=;" %%a in (a.txt) do set trois=%%a

if not defined un goto :creer
if not defined deux goto :creer
if not defined trois goto :creer

goto :programe

:creer
set /p un=ma valeur 1
set /p deux=ma valeur 2
set /p trois=ma valeur 3

:programe
echo ma variable 1 %un%
echo ma variable 2 %deux%
echo ma variable 3 %trois%
pause>nul

:sauvegarder
echo %un%;%deux%;%trois%; >a.txt

exit


EDIT : Ajout du LANGAGE dans les balises de code pour avoir la coloration syntaxique, la numérotation des ligne et l'indentation


“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
Messages postés
38
Date d'inscription
dimanche 17 novembre 2019
Statut
Membre
Dernière intervention
5 mai 2021

PARFAIT !!!
Merci sa marche, donc si j'ai comprit
delims
sert a séparer les différents
tokens
Messages postés
13422
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
9 mai 2021
4 332
Oui tu as tout compris.