使用tinyxml在c ++中进行xml解析

时间:2011-06-30 08:16:18

标签: c++ xml parsing tinyxml

我正在用c ++创建xml文件 我编写的代码就像创建用c ++编写xml文件一样,如下所示

const char* assign =

    "<?xml version=\"1.0\"  standalone='no' >\n"
    "<office>"

    "<work>file created</work>"
    "</office>";

TiXmlDocument doc( "vls.xml" );
        doc.Parse( assign );

    if ( doc.Error() )
        {
            printf( "Error in %s: %s\n", doc.Value(), doc.ErrorDesc() );
            exit( 1 );
        }
        doc.SaveFile();


    bool loadOkay = doc.LoadFile();

    if ( !loadOkay )
    {
        printf( "Could not load test file 'vls.xml'. Error='%s'. Exiting.\n", doc.ErrorDesc() );
        exit( 1 );
    }
    else
        printf(" 'vls.xml' loaded successfully");

但现在我只需要XMl文件中的数据而不是标签 伙计们帮助我。

1 个答案:

答案 0 :(得分:3)

我建议您阅读TinyXml documentation,更具体地说是TiXmlElement documentation

对于你的特殊情况,我会说它看起来像那样:

TiXmlElement * office = doc.FirstChildElement( "office" );
if( office )
{
   TiXmlElement *work = office.FirstChildElement( "work" );
   if( work )
   {
       printf("Work text: %s\n", work.GetText());
   }
}

虽然我不是TinyXml的专家。

供参考:

在提出这些琐碎的问题之前,请先搜索 Google StackOverflow