19 Stimmen

Parsen von XML-Dokumenten in C#

Duplikat: Dies ist ein Duplikat von Beste Praktiken zum Parsen von XML-Dateien mit C#? und viele andere (siehe https://stackoverflow.com/search?q=c%23+parse+xml ). Bitte schließen Sie sie und antworten Sie nicht.


Wie parsen Sie XML-Dokument von unten nach oben in C#?

Zum Beispiel:

<Employee>
   <Name> Test </name>
   <ID> 123 </ID>
<Employee>
<Company>
    <Name>ABC</company>
    <Email>test@ABC.com</Email>
 </company>

Wie diese gibt es viele Knoten Ich muss mit dem Parsen von unten nach oben beginnen, wie erstes Parsen <company> und dann und so weiter Wie doi gehen über diese in C#?

63voto

Jon Grant Punkte 11125

Versuchen Sie dies:

XmlDocument doc = new XmlDocument();
doc.Load(@"C:\Path\To\Xml\File.xml");

Oder alternativ, wenn Sie das XML in einem String haben, verwenden Sie die LoadXml Methode.

Sobald Sie es geladen haben, können Sie mit SelectNodes y SelectSingleNode um z. B. bestimmte Werte abzufragen:

XmlNode node = doc.SelectSingleNode("//Company/Email/text()");
// node.Value contains "test@ABC.com"

Schließlich ist zu beachten, dass Ihr XML ungültig ist, da es keinen einzigen Root-Knoten enthält. Sie muss etwa so aussehen:

<Data>
    <Employee>
        <Name>Test</Name>
        <ID>123</ID>
    </Employee>
    <Company>
        <Name>ABC</Name>
        <Email>test@ABC.com</Email>
    </Company>
</Data>

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X