[英]TinyXML2 - Trouble Getting Started
我刚刚开始使用XML解析库,但是开始时遇到麻烦。 (我猜想是学习曲线)更具体地说,在尝试获取元素并使用它时,我正在处理异常。 现在我有这行:
tinyxml2::XMLElement *firstEvent = doc.FirstChildElement("EVENTS")->FirstChildElement();
引发内存异常。 由于某种原因,我无法显示我的XML代码,但是结构是
文件->事件->事件->更多内容
因此,在我看来,解析器无法访问“事件”元素。 是什么原因造成的? 我究竟做错了什么?! 任何帮助将是非常好的!
假设这是您的xml内容:
<events>
<event> "Move" <\event>
<event> "Walk" <\event>
<event> "Run" <\event>
<\events>
在迭代之前测试XmlElement
是否不为NULL
,以避免引发异常:C ++代码段如下所示:
XmlElement* elem = doc.FirstChildElement("events");
if(elem != NULL)
{
for (XmlElement* e = elem->FirstChildElement("event"); e != NULL; e = e->NextSiblingElement("event"))
{
const char *c = e->GetText(); // if its an attrib use e->Attribute("event-type");
/* more */
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.