首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tinyxml2根集属性

Tinyxml2根集属性
EN

Stack Overflow用户
提问于 2016-05-03 14:10:13
回答 1查看 1.7K关注 0票数 0

我一直试图使用tinyxml2为XML中的根设置一个属性。

在tinyxml中,以下代码

代码语言:javascript
复制
TiXmlDocument doc;

TiXmlElement * root = new TiXmlElement( "ROOT" );


root->SetAttribute("msg","ImFree");
doc.LinkEndChild( root );

TiXmlElement * element = new TiXmlElement( "CHILD" );
TiXmlText * text = new TiXmlText( "Message" );
element->LinkEndChild( text );
root->LinkEndChild( element );


doc.SaveFile( "foo.xml" );

生成以下xml文件:

代码语言:javascript
复制
<ROOT msg="ImFree">
    <CHILD>Message</CHILD> 
</ROOT>

但是,我仍然不知道如何在tinyxml2中设置根的属性。我有以下代码:

代码语言:javascript
复制
tinyxml2::XMLDocument xml_doc;

tinyxml2::XMLNode * p_root = xml_doc.NewElement("ROOT");
xml_doc.InsertFirstChild(p_root);


tinyxml2::XMLElement * p_element = xml_doc.NewElement("CHILD");
p_element->SetText("Message");
p_root->InsertEndChild(p_element);

它产生:

代码语言:javascript
复制
<ROOT>
    <CHILD>Message</CHILD>
</ROOT>

现在,如果我编写p_root->SetText();p_root->SetValue();SetAttribute,所有这些都会给出一个class tinyxml2::XMLNode has no member named SetTextSetValueSetAttribute错误。

我在网上搜索了很难找到答案,但找不到。

谢谢

干杯

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-03 14:17:11

尝试将行tinyxml2::XMLNode * p_root = xml_doc.NewElement("ROOT");更改为tinyxml2::XMLElement * p_root = xml_doc.NewElement("ROOT");。XMLNode没有SetAttribute方法,只有XMLElement有(source.html)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37006581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档