如何获取属性的值并将其显示在Tmemo上



我有一个xml文件,如下所示。。。

<fruits>
    <apple color="red"/>
    <orange color="orange"/>
    <banana color="yellow"/>
</fruits>

我想为每个元素获取属性color的值,并将其显示在备忘录中。我知道如何在备忘录中显示元素的值,但似乎不知道如何为属性显示。这是我迄今为止的代码。。。

TiXmlDocument XMLFile;
XMLFile.LoadFile("fruits.xml");
TiXmlHandle XMLFileHandle( &XMLFile );
TiXmlElement* root = XMLFile .FirstChildElement("fruits");
for(TiXmlElement* elem = root->FirstChildElement(); elem != NULL; elem = elem->NextSiblingElement())
{
    memoOverview->Lines->Add(elem->Attribute("val")->GetText());
}

我使用tinyxml来解析xml文件,并且我是在C++和C++Builder中完成这项工作的。

根据文档,您需要将elem->Attribute("val")->GetText()替换为elem->Attribute("color"):

memoOverview->Lines->Add(elem->Attribute("color"));
TiXmlDocument XMLFile;
XMLFile.LoadFile("fruits.xml");
TiXmlHandle XMLFileHandle( &XMLFile );
TiXmlElement* root = XMLFile.FirstChildElement("fruits");
char stringBuffer[64];
for (TiXmlElement* elem = root->FirstChildElement(); elem != NULL; elem = elem->NextSiblingElement())
{
  if (strcmp(LastChildElement->Value(), "color") == 0)
  {
    strncpy(stringBuffer, LastChildElement->Attribute("color"), sizeof(stringBuffer));
  }
  memoOverview->Lines->Add( stringBuffer );
}

相关内容

  • 没有找到相关文章

最新更新