Zi 字媒體
2017-07-25T20:27:27+00:00
純C++ 讀取XML(使用tinyxml函式庫)
資料來源: http://www.grinninglizard.com/tinyxml/
test_jash.xml
– <Persons>
– <Person ID=”1“>
<name>jashname>
<age>20age>
Person>
– <Person ID=”2“>
<name>jash.liaoname>
<age>18age>
Person>
Persons>
C++程式碼
#include
#include “tinyxml.h”
#include “tinystr.h”
using namespace std;
void printNode(TiXmlNode* node);
int main()
{
cout << “Hello world!” << endl;
TiXmlDocument
doc(“test_jash.xml”);
doc.LoadFile();
TiXmlNode
*root = doc.RootElement();
printNode(root);
return 0;
}
void printNode(TiXmlNode* node) //迴圈列印所有的節點
{
if(node
== NULL) return;
cout<Value()<
//
顯示節點的名稱
TiXmlElement*
element = node->ToElement();
if(element
&& element->GetText()) //
顯示節點的內容
cout<”<<
element->GetText()<
if(element
&& element->FirstAttribute()) //
顯示節點屬性
{
TiXmlAttribute
*IDAttribute = element->FirstAttribute();
while
( IDAttribute )
{
cout<”<
name=”<Name()<
cout<
IDAttribute->Value() << endl;
IDAttribute=IDAttribute->Next();
}
}
TiXmlElement*
child = node->FirstChildElement();
while(child!=NULL)
{
printNode(child);
//
遞迴調用顯示節點
child
= child->NextSiblingElement();
}
}
寫了
5860316篇文章,獲得
23313次喜歡