Wie lese und analysiere ich eine XML-Datei in C #?
Wie kann ich Lesen und Parsen einer XML-Datei in C#?
Kommentar zu dem Problem
Die meisten einfachen solutin ist die Verwendung von LINQ to XML. Siehe mein Beispiel.
InformationsquelleAutor der Frage Gajendra | 2009-03-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
XmlDocument zum Lesen einer XML Zeichenkette oder von der Datei.
oder
finden dann einen Knoten unterhalb ie wie diese
oder
dann Lesen Sie den text innerhalb eines Knotens, wie dies
oder Lesen Sie ein Attribut
Immer auf null prüfen auf Attribute["etwas"] da wird es null sein, wenn das Attribut nicht vorhanden.
InformationsquelleAutor der Antwort Wolf5
LINQ to XML Beispiel:
Referenz: LINQ to XML bei MSDN
InformationsquelleAutor der Antwort Konstantin Tarkus
Hier ist eine Anwendung, die ich schrieb, zum Lesen von xml-sitemaps:
Code Einfügen Bin
http://pastebin.com/yK7cSNeY
InformationsquelleAutor der Antwort ajzeffer
Es gibt viele Wege, einige:
Sie Lesen möchten - verwenden Sie XmlSerializer
um die Daten in einer Xml geladen
eine Instanz der Klasse.
InformationsquelleAutor der Antwort eglasius
Linq to XML.
Auch, VB.NET hat viel bessere xml-parsing-support über den compiler als C#. Wenn Sie die option und der Wunsch, überprüfen Sie es heraus.
InformationsquelleAutor der Antwort Will
Können Sie entweder:
Beispiele sind auf den msdn-Seiten zur Verfügung gestellt
InformationsquelleAutor der Antwort Grzenio
Check-out XmlTextReader - Klasse zum Beispiel.
InformationsquelleAutor der Antwort Frederik Gheysels
Könnten Sie ein DataSet Lesen von XML-strings.
Dieses Posting aus Gründen der information.
InformationsquelleAutor der Antwort prasanna venkatesh
Können Sie vermeiden, die erste Anweisung und geben Sie nur den Pfad-Namen im Konstruktor XmlTextReader.
InformationsquelleAutor der Antwort Vishal Kotak
Gibt es verschiedene Möglichkeiten, je nachdem, wo Sie erhalten möchten.
XmlDocument ist leichter als XDocument, aber wenn Sie möchten, um zu überprüfen, minimalistisch, eine XML-Zeichenfolge enthält, dann regulärer Ausdruck ist möglicherweise der Schnellste und leichteste Wahl, die Sie machen können. Zum Beispiel habe ich umgesetzt Rauch-Test mit SpecFlow für meine API, und ich möchte testen, ob eines der Ergebnisse in beliebige gültige XML - dann würde ich einen regulären Ausdruck verwenden. Aber wenn ich müssen, entnehmen Sie die Werte aus dieser XML -, dann würde ich analysieren, es mit XDocument zu machen es schneller und mit weniger code. Oder ich würde verwenden XmlDocument, wenn ich mit einem großen XML - (und manchmal arbeite ich mit XML ' s, die sind um die 1M-Linien, noch mehr); dann konnte ich sogar Lesen Sie es Zeile für Zeile. Warum? Versuchen Sie, öffnen von mehr als 800 MB in privaten bytes, die in Visual Studio, auch auf die Produktion, Sie sollten nicht Objekte, die größer als 2 GB ist. Sie können mit einer twerk, aber Sie sollten nicht. Wenn Sie Parsen ein Dokument, welches EINE MENGE von Zeilen, dann werden diese Dokumente wäre wahrscheinlich CSV.
Schreibe ich diesen Kommentar, weil ich sehe eine Menge von Beispielen, mit XDocument. XDocument ist nicht gut für große Dokumente, oder wenn Sie nur wollen, um zu überprüfen, ob es der Inhalt ist XML gültig. Wenn Sie möchten, um zu überprüfen, ob die XML selbst macht Sinn, dann müssen Sie Schema.
Ich auch downvoted die vorgeschlagene Antwort, weil ich glaube, es muss die oben genannten Informationen in sich. Vorstellen brauche ich, um zu überprüfen, wenn 200M von XML -, 10 mal eine Stunde gültig ist XML. XDocument verschwenden eine Menge Ressourcen.
prasanna venkatesh auch Staaten könnten Sie versuchen, füllen die Zeichenfolge in einem Datensatz, wird er Sie an gültige XML als gut.
InformationsquelleAutor der Antwort Nikola