Я только что загрузил библиотеку pugixml, и я пытаюсь адаптировать ее к моим потребностям. Он в основном ориентирован на стиль DOM, который я не использую. Хранилище данных я выглядит следующим образом:Как читать узлы с помощью pugixml?
<?xml version="1.0" encoding="UTF-8"?>
<profile>
<points>
<point>
<index>0</index>
<x>0</x>
<y>50</y>
</point>
<point>
<index>1</index>
<x>2</x>
<y>49.9583</y>
</point>
<point>
<index>2</index>
<x>12</x>
<y>50.3083</y>
</point>
</points>
</profile>
Pugixml guide говорит:
Обычно для хранения данных в виде текстового содержимого некоторого узла - то есть Это узел. В этом случае узел не имеет значения, но вместо этого имеет дочерний элемент типа node_pcdata со значением «Это узел». pugixml предоставляет дочерние функции child_value() и text() для анализа таких данных.
Но у меня возникла проблема с использованием этих методов, я не получаю значения узлов.
#include "pugixml.hpp"
#include <string.h>
#include <iostream>
int main()
{
pugi::xml_document doc;
if (!doc.load_file("/home/lukasz/Programy/eclipse_linux_projects/xmlTest/Debug/pidtest.xml"))
return -1;
pugi::xml_node points = doc.child("profile").child("points");
for (pugi::xml_node point = points.first_child(); point; point = points.next_sibling())
{
// ?
}
return 0;
}
Как считывать индексы, значения x и y внутри for? Я обольстил бы всю помощь.
Я нахожу «http://pugixml.org/docs/samples/traverse_rangefor.cpp» наиболее удобные для меня, так как мне нужно собрать эти значения к й и y векторов. – Bremen
http://paste.ubuntu.com/11518469/ – sehe