環境是vs2010+Windows 7。
timyxml庫我是在這裡下載的,直接就能編譯,編譯後得到tinyxml.lib。
使用時當然也需要tinyxml.h檔案。
如果不想編譯,這裡能下載我編譯好的lib,順便附贈h檔案。
我程式中解析的xml檔案在這裡能找到。
代碼如下:
#include <iostream>#include <string>#include "tinyxml.h"using namespace std;#pragma comment(lib,"tinyxml.lib")int main(){ const char * xmlFile = "lianxi.xml"; TiXmlDocument doc; doc.LoadFile(xmlFile);// doc.Print(); //輸出xml檔案看看 TiXmlElement* firstLevel=doc.RootElement(); cout<<firstLevel->Value()<<":"<<endl; /* 某些情況會用注釋的這些內容 比如: <menu name="123" num="456"> </menu> TiXmlAttribute *firstAtt=firstLevel->FirstAttribute(); while (firstAtt!=NULL) { cout<<firstAtt->Name()<<":"<<firstAtt->Value(); firstAtt=firstAtt->Next(); } */ TiXmlElement* secondLevel=firstLevel->FirstChildElement(); while(secondLevel!=NULL) { cout<<" "; cout<<secondLevel->Value()<<":"<<endl; TiXmlElement* thirdLevel=secondLevel->FirstChildElement(); while(thirdLevel!=NULL) { cout<<" "; cout<<thirdLevel->Value()<<":"<<thirdLevel->GetText()<<endl; thirdLevel=thirdLevel->NextSiblingElement(); } secondLevel=secondLevel->NextSiblingElement(); } cin.get(); return 0;}