spookypoof
Goto Top

Aus XML Datei per Findstr Text in einer Variable abspeichern?

Yo Leute,

Ich will aus einer XML Datei etwas in einer Variable abspeichern und für die Batch nutzen.

in der XML kommt so etwas vor:
  <id type="integer">130487606</id>  

Das eigentliche Problem ist, ich brauche die Nummer die das steht, also "130487606" das " <id type="integer"></id>" muss ignoriert werden.
Die Zahl kann sich immer ändern. Das ist jetzt nur ein Beispiel.

spookypoof

Content-Key: 230075

Url: https://administrator.de/contentid/230075

Printed on: April 18, 2024 at 15:04 o'clock

Member: Endoro
Endoro Feb 16, 2014 at 14:02:27 (UTC)
Goto Top
Hey,
mein Vorschlag:
FOR /f tokens^=3^,4delims^=^<^>^" %%a IN (xml) DO IF /i "%%~a"=="integer" ECHO(%%b  
Member: spookypoof
spookypoof Feb 16, 2014 updated at 14:32:41 (UTC)
Goto Top
Jo schon mal gut.

Aber funktioniert nicht so wie ich es möchte. Jetzt holt er sich aber alle Zahlen die sich nach "integer" befinden. Hab wohl vergessen zu sagen das es mehrere "type="integer">" in der XML gibt. Und er zeigt es an, und speichert es nicht in einer Variable. Am besten ist es wenn man die suche bis auf der 4. Zeile beschränkt. Aber wie?
Member: Endoro
Endoro Feb 16, 2014 updated at 14:51:39 (UTC)
Goto Top
Ja, das geht auch:
FOR /f tokens^=1-5delims^=^<^>:^" %%a IN ('findstr /n "^" xml') DO IF %%a LSS 5 IF /i "%%~d"=="integer" ECHO(%%e  

PS: oder lass dir das erste ausgeben:
FOR /f tokens^=3^,4delims^=^<^>^" %%a IN (xml) DO IF /i "%%~a"=="integer" ECHO(%%b&EXIT /b  
Member: spookypoof
spookypoof Feb 16, 2014 at 14:59:14 (UTC)
Goto Top
Hat geklappt! Danke Endoro für die schnelle Hilfe!