1
xmlファイル:Rapidxml横断ノード
<top>
<name>hanhao</name>
<age>18</age>
<!--
node name : name
node value : hanhao
node name : age
node value : 18
-->
</top>
私のcppファイル:
#include<iostream>
#include"rapidxml/rapidxml.hpp"
#include"rapidxml/rapidxml_print.hpp"
#include"rapidxml/rapidxml_utils.hpp"
using namespace std;
using namespace rapidxml;
void handlenode(xml_node<> *node){
for(node = node -> first_node(); node != NULL; node = node -> next_sibling()){
cout<<node -> name() <<" 's value is : "<<node->value() <<endl;
handlenode(node);
}
}
int main(){
char xmldoc[] = "demo.xml";
file<> file(xmldoc);
xml_document<> doc;
doc.parse<parse_comment_nodes>(file.data());
xml_node<> *node = doc.first_node();
handlenode(node);
doc.allocate_node(node_element,"",node->value());
return 0;
}
予想される出力は次のようになります。
名前の値は次のとおりです。hanhao
年齢の値は:18です
が、実際の出力は、次のとおりです。
名前の値は次のとおりです。hanhao
の値は次のとおりです。hanhao
年齢の値は次のとおりです。18
の値は次のとおりです。18
の値は次のとおりです。
ノード名:名前
ノード値:hanhao
ノード名:年齢
ノード値:18
なぜこの問題が発生するのか教えていただけますか?
あなたは@HanHaoと@paoloの両方が新しいと思われるので、ここで[ツアー]をすばやく表示してください。コメントはチャットルームではなく、そのチャットルームがあります。簡単にアップボートして、良い答えを受け入れていただきありがとうございます。これは、良い答えに対する評判を得ることであり、またここでの品質を保証することです。あなたの参加に感謝します。 – inetphantom