Ich erstellen ein Batch-Skript, um die Telefonnummer eines bestimmten Mitarbeiters aus der XML-Datei zu erhalten. Betrachten Sie zum Beispiel die folgenden Daten.Wie kann ich den bestimmten Tag-Inhalt in XML-Datei erhalten, auch wenn mehrere gleiche Tags mit dem Batch-Skript
<?xml version="1.0"?>
<Employee_Info xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="employee.xs">
<Employee Employee_Number="105">
<Name>Masashi Okamura</Name>
<Department>Design Department</Department>
<Telephone>03-1452-4567</Telephone>
<Email>[email protected]</Email>
</Employee>
<Employee Employee_Number="109">
<Name>Aiko Tanaka</Name>
<Department>Sales Department</Department>
<Telephone>03-6459-98764</Telephone>
<Email>[email protected]</Email>
</Employee>
</Employee_Info>
Hier zwei Mitarbeiter Tags sind da, meine Anforderung ist es, die bestimmte Mitarbeiter Telefonnummer zu bekommen. Das heißt, wenn wir die Telefonnummer einer Angestelltennummer 105 erhalten möchten, sollte sie 03-1452-4567 nur wie für 109 auch anzeigen. Bitte helfen Sie mir dabei.
mein Skript ist unten, aber ich bekomme beide Zahlen, könnte mir jeder Körper dabei helfen.
@ECHO Off
setlocal EnableDelayedExpansion
FOR /f "tokens=2 delims==>" %%a IN ('find /I "Employee_Number" employee.xml') DO(
set num=%%~nxa
IF /I "!num!" EQU "105" (
FOR /f "tokens=3 delims=<>" %%b IN ('find /I "telephone" employee.xml') DO echo %%b)
)
echo %ph%
vielen Dank @ Aacini. Danke für deine Hilfe, es funktioniert gut und mein Problem ist jetzt gelöst – IamKishore