Frage von valentin1842, 27

Batch: Variabeln aus einer Textdatei auslesen und übernehmen?

Hallo, ich bastle gerade ein wenig an einem Batch Spiel herum und hätte da eine Frage:

mit

@echo %beispielvariabel% >beispiel.data

bzw.

@echo %beispielvariabel2% >>beispiel.data

habe ich mehre Werte von variabeln in eine .data-datei geschrieben (eine zeile je variabel, siehe bild).

ist es möglich eine zeile der datei in eine Variabel "umzuwandeln" und diese dann zu nutzen und wenn ja wie? lg

Antwort
von S1r1us13, 27
Setlocal EnableDelayedExpansion
set Counter=0
FOR /F "delims=" %%A IN (beispiel.data) DO (
  set /a Counter+=1
  set beispielvariable!Counter!=%%A
)

Damit nummerierst du die Variable aufwärts beginnend bei 1 und liest jede einzelne Zeile in eine eigene Variable ein.

Ich persönlich schreibe zum Auslesen gerne erst den Variablennamen, dann ein Gleichheitszeichen und dann den Variablenwert in die später auszulesende Datei, sprich

echo Variable=Wert>beispiel.data
FOR /F "tokens=1,* delims==" %%A IN (beispiel.data) DO set %%A=%%B

Dadurch musst du die Variablen nicht durchnummerieren, sondern kannst den Namen frei bestimmen.

Kommentar von maximilianus7 ,

toll! ich habe die frage absolut nicht verstanden.

Keine passende Antwort gefunden?

Fragen Sie die Community