aus Textdatei Werte aus Anführungszeichen in Variablen schreiben
Hi an alle,
ich habe ein kleines Problem was ich mit der Suchfunktion zwar gefunden habe, allerdings nicht lösen konnte.
In einer Textdatei steht in dem Format "Wert1","Wert2","Wert3", .....,"Wert12".
Ich möchte am liebsten die einzelnen Werte in Variablen sehen.
Probiert habe ich diverse Lösungen mit Sonderzeichen löschen und dann einlesen, allerdings ohne erfolg.
Hat jemand eine Idee, wie ich das machen kann?
Viele Grüße aus Hamburg
ich habe ein kleines Problem was ich mit der Suchfunktion zwar gefunden habe, allerdings nicht lösen konnte.
In einer Textdatei steht in dem Format "Wert1","Wert2","Wert3", .....,"Wert12".
Ich möchte am liebsten die einzelnen Werte in Variablen sehen.
Probiert habe ich diverse Lösungen mit Sonderzeichen löschen und dann einlesen, allerdings ohne erfolg.
Hat jemand eine Idee, wie ich das machen kann?
Viele Grüße aus Hamburg
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 108979
Url: https://administrator.de/contentid/108979
Ausgedruckt am: 23.11.2024 um 07:11 Uhr
11 Kommentare
Neuester Kommentar
Hallo Paddyville und willkommen im Forum!
Wenn es genau 12 Werte sind, dann etwa so:
[Edit] Durch Verwendung der "for /L"-Schleife noch etwas kürzer gefasst ... [/Edit]
Grüße
bastla
Wenn es genau 12 Werte sind, dann etwa so:
@echo off & setlocal
set "Datei=D:\Deine Datei.txt"
for /f "usebackq delims=" %%i in ("%Datei%") do call :ProcessLine %%i
goto :eof
:ProcessLine
for /L %%a in (1,1,9) do call set "W%%a=%%~%%a"
shift
set "W10=%~9"
shift
set "W11=%~9"
shift
set "W12=%~9"
echo %W1%_%W2%_..._%W12%
goto :eof
Grüße
bastla
Hallo Paddyville!
"for /f" solltest Du eigentlich gar nicht sehen ...
Wenn Du von der Kommandozeile testest (und das ist für einen Batch eigentlich immer zu empfehlen), kannst Du durch Ändern des "echo off" auf "echo on" jeden Befehl vor der Ausführung anzeigen lassen und so den Ablauf besser nachvollziehen.
Grüße
bastla
"for /f" solltest Du eigentlich gar nicht sehen ...
Wenn Du von der Kommandozeile testest (und das ist für einen Batch eigentlich immer zu empfehlen), kannst Du durch Ändern des "echo off" auf "echo on" jeden Befehl vor der Ausführung anzeigen lassen und so den Ablauf besser nachvollziehen.
Grüße
bastla
Hallo Paddyville!
Die Konvertierung per "type" lässt sich in den Batch integrieren:
Grüße
bastla
Die Konvertierung per "type" lässt sich in den Batch integrieren:
@echo off & setlocal
set "Datei=D:\test.dat"
set DateiTemp=%temp%\Daten.dat
type "%Datei%">%DateiTemp%
for /f "usebackq delims=" %%i in ("%DateiTemp%") do call :ProcessLine %%i
del %DateiTemp%
goto :eof
:ProcessLine
for /L %%a in (1,1,9) do call set "W%%a=%%~%%a"
shift
set "W10=%~9"
shift
set "W11=%~9"
shift
set "W12=%~9"
echo %W1%_%W2%_..._%W12%
goto :eof
bastla