c – 使用TinyXML解析XML元素

c – 使用TinyXML解析XML元素,第1张

概述更新:仍然无法正常工作:(我已更新代码部分以反映我目前拥有的内容. 对于使用过TinyXML的人来说,这应该是一个非常简单的问题.我正在尝试使用TinyXML来解析XML文档并提取一些值.我想出了昨天如何在库中添加,我已经成功加载了文档(嘿,这是一个开始). 我一直在阅读手册,我无法弄清楚如何提取个人属性.谷歌搜索后,我还没有找到我的具体例子的例子,所以也许这里使用过TinyXML的人可以提供帮助 更新:仍然无法正常工作:(我已更新代码部分以反映我目前拥有的内容.

对于使用过TinyXML的人来说,这应该是一个非常简单的问题.我正在尝试使用TinyXML来解析XML文档并提取一些值.我想出了昨天如何在库中添加,我已经成功加载了文档(嘿,这是一个开始).

我一直在阅读手册,我无法弄清楚如何提取个人属性.谷歌搜索后,我还没有找到我的具体例子的例子,所以也许这里使用过TinyXML的人可以提供帮助.下面是XML的一部分,我已经开始解析它了.

XML:

<EGCs xmlns="http://tempuri.org/XMLSchema.xsd">  <card type="EGC1">    <offsets>      [ ... ]    </offsets>  </card>   <card type="EGC2">    <offsets>      [ ... ]    </offsets>  </card></EGCs>

加载/解析代码:

tixmldocument doc("EGC_Cards.xml");if(doc.Loadfile()){    tixmlHandle hDoc(&doc);    tixmlElement* pElem;    tixmlHandle hRoot(0);    pElem = hDoc.FirstChildElement().Element();    if (!pElem) return false;    hRoot = tixmlHandle(pElem);    //const char *attribval = hRoot.FirstChild("card").toElement()->Attribute("card");    pElem = hDoc.FirstChild("EGCs").Child("card",1).toElement();    if(pElem)    {        const char* tmp = pElem->GetText();        CComboBox *combo = (CComboBox*)GetDlgitem(IDC_EGC_CARD_TYPE);        combo->AddString(tmp);    }}

我想拉出每张卡片“type”并将其保存为字符串以放入组合框中.如何访问此属性成员?

解决方法 经过大量的代码游戏,这是解决方案! (在 HERE的帮助下)
tixmldocument doc("EGC_Cards.xml");combo = (CComboBox*)GetDlgitem(IDC_EGC_CARD_TYPE);if(doc.Loadfile()){    tixmlHandle hDoc(&doc);    tixmlElement *pRoot,*pParm;    pRoot = doc.FirstChildElement("EGCs");    if(pRoot)    {        pParm = pRoot->FirstChildElement("card");        int i = 0; // for sorting the entrIEs        while(pParm)        {            combo->InsertString(i,pParm->Attribute("type"));            pParm = pParm->NextSiblingElement("card");            i++;        }    }}else {    AfxMessageBox("Could not load XML file.");    return false;}
总结

以上是内存溢出为你收集整理的c – 使用TinyXML解析XML元素全部内容,希望文章能够帮你解决c – 使用TinyXML解析XML元素所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1255903.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-07
下一篇2022-06-07

发表评论

登录后才能评论

评论列表(0条)

    保存