Lesen einer XML-Datei in einem C ++ - Programm

8

Ich versuche eine XML-Datei in meinem C ++ - Programm zu lesen. Die XML-Datei sieht etwa so aus:

%Vor%

Im Moment kann ich mir die XML-Datei anschauen und versuchen, sie so zu lesen:

%Vor%

Im Allgemeinen scheint dies eine schlechte Idee zu sein, und es begrenzt wirklich, wie die XML-Datei geändert werden kann. Die obige Lösung ist sehr manuell und wenn sich irgendetwas in der XML ändert, scheint es, dass die gesamte Methode des Lesens geändert werden müsste.

Gibt es einen besseren Weg, dies zu tun?

    
user974967 27.02.2012, 22:18
quelle

5 Antworten

6

Sie könnten eine Bibliothek verwenden, die das für Sie erledigt. Wenn Sie auf einer Windows-Plattform arbeiten, können Sie MSXML verwenden ist bereits Teil des Systems.

Überprüfen Sie diese Frage: Lesen Sie die XML-Datei in C ++

Andere beliebte Bibliotheken: markiert sind, ,

gekennzeichnet sind     
LihO 27.02.2012, 22:21
quelle
2

boost property tree funktioniert sehr gut mit xml, würde ich das verwenden.

    
01100110 27.02.2012 22:28
quelle
1

Sie können die POCO-Bibliothek mit Funktionen zum Analysieren von XML verwenden

    
Roman Smelyansky 27.02.2012 22:19
quelle
1

In Multi-Plattform-Quellen verwende ich normalerweise Qt XML-Reader.

Sie haben 3 Möglichkeiten zu lesen:

  1. Qt-Kern QXmlStreamReader - Qt-Art des XML-Lesens
  2. SAX2-Reader - Standard-SAX2-Reader mit Content-Handling Klasse
  3. DOM-Reader - DOM-Dokumentenleser mit XML-Knoten

Wenn Sie nur Windows-Software schreiben, sollten Sie MSXML 6 verwenden. Seit Windows XP SP3 MSXML 6.0 ist Teil des Betriebssystems.

Unter Linux sollten Sie libxml2 verwenden.

    
Naszta 27.02.2012 22:51
quelle
1

Sie benötigen einen XML-Parser. Es gibt eine Menge da draußen:

Mein persönlicher Favorit ist pugiXML, aber das ist eine Frage der persönlichen Präferenz.

    
pmr 27.02.2012 22:53
quelle

Tags und Links