私はpugixmlの初心者です。ここでXML を指定したとします。私はすべての学生の価値Name
を手に入れたいと思っています。Roll
以下のコードはタグのみを検出し、値は検出しません。
#include <iostream>
#include "pugixml.hpp"
int main()
{
std::string xml_mesg = "<data> \
<student>\
<Name>student 1</Name>\
<Roll>111</Roll>\
</student>\
<student>\
<Name>student 2</Name>\
<Roll>222</Roll>\
</student>\
<student>\
<Name>student 3</Name>\
<Roll>333</Roll>\
</student>\
</data>";
pugi::xml_document doc;
doc.load_string(xml_mesg.c_str());
pugi::xml_node data = doc.child("data");
for(pugi::xml_node_iterator it=data.begin(); it!=data.end(); ++it)
{
for(pugi::xml_node_iterator itt=it->begin(); itt!=it->end(); ++itt)
std::cout << itt->name() << " " << std::endl;
}
return 0;
}
各生徒の名前とロールの出力が必要です。上記のコードを変更するにはどうすればよいですか? また、ここを参照できれば(Test を押してください)、pugixml でサポートされている xpath を直接記述できます。もしそうなら、Pugixml で Xpath を使用して求める値を取得するにはどうすればよいですか。