如何使用rapidxml获取<node> </node>中的所有字符串

时间:2014-11-03 09:46:59

标签: c++ rapidxml

如果我有xml内容如下

<node>
   <content> hello <b>world</b>
          <image src="src/image.jpg"/>    
   </content>    
</node>

我想获取值为字符串,其中包含所有数据 或者说,

string all_data = node->get_XXXX????();

最后all_data ==“&lt; content&gt; hello&lt; b&gt; world&lt; / b&gt; \ n&lt; image src = \”src / image.jpg \“/&gt; \ n&lt; /内容&gt;“

1 个答案:

答案 0 :(得分:0)

您需要print使用rapidxml_print.hpp

中的功能

见这里。 http://rapidxml.sourceforge.net/manual.html#namespacerapidxml_1printing

// Print to string using output iterator
std::string s;
print(std::back_inserter(s), node, 0);

请注意,这可能会重新格式化标记周围的空格等。如果这对您至关重要,您应该找到一种不同的文档编码方式。