ОБНОВЛЕНИЕ: по-прежнему не работает :( Я обновил часть кода, чтобы отразить то, что у меня сейчас есть.
Это должен быть довольно простой вопрос для людей, которые использовали TinyXML. Я пытаюсь использовать TinyXML для анализа XML-документа и извлечения некоторых значений. Вчера я понял, как добавить в библиотеку, и я успешно загрузил документ (эй, это начало).
Я читал руководство и не могу понять, как вытащить отдельные атрибуты. После поиска в Google я не нашел примера моего конкретного примера, поэтому, возможно, кто-то из тех, кто использовал 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);
}
}
Я хочу извлечь каждую карточку "тип" и сохранить ее в виде строки, чтобы поместить в поле со списком. Как получить доступ к этому члену атрибута?