最近要做一個(gè)VRP的算法,測(cè)試集都是放在Xml文件中,而我的算法使用C++來寫,所以需要用C++來讀取Xml文件。

在百度上搜“C++讀取Xml文件”,可以出來很多博客,大多數(shù)是關(guān)于tinyXml的,所以這篇博文也是講述如何用tinyXML來讀取XML文件。

有些內(nèi)容可能參考到了@marchtea的博文《C++讀取XML,tinyXml的使用》:http://www.cnblogs.com/marchtea/archive/2012/11/08/2760593.html。

tinyXml是一個(gè)免費(fèi)開源的C++庫(kù),可以到官網(wǎng)上下載:https://sourceforge.net/projects/tinyxml/。

下載下來解壓之后,可以看到下面這些文件:

電腦培訓(xùn),計(jì)算機(jī)培訓(xùn),平面設(shè)計(jì)培訓(xùn),網(wǎng)頁設(shè)計(jì)培訓(xùn),美工培訓(xùn),Web培訓(xùn),Web前端開發(fā)培訓(xùn)

我是在windows下用VS來寫C++的,按照@marchtea的說法,只需要直接打開tinyxml.sln就可以,不過我還是用了笨辦法:

  • 把tinystr.cpp, tinyxml.cpp, tinyxmlerror.cpp, tinyxmlparser.cpp, tinystr.h, tinyxml.h拷貝到工程目錄下;

  • 然后加入頭文件引用:#include "tinystr.h"   #include "tinyxml.h"。

接下來就來分享一下我讀取VRP問題中的solomon benchmark的方法,這些方法都是參考自tinyXml的官方教程,在下載的文件夾中有"doc"子文件夾,打開它,有一個(gè)叫做"tutorial0"的html文件,打開它可以看到詳細(xì)的教程。

網(wǎng)友評(píng)論