Récupérer la valeur de plusieurs variables

Résolu
Utilisateur anonyme -  
barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   -
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

  1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
     
    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

    1
  2. Utilisateur anonyme
     
    PARFAIT !!!
    Merci sa marche, donc si j'ai comprit
    delims
    sert a séparer les différents
    tokens
    0
    1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
       
      Oui tu as tout compris.
      0