1. 程式人生 > >XML檔案在C++中的使用

XML檔案在C++中的使用

   今天做的任務需要我把一種類似樹的資料儲存起來並讀取,最開始想要使用ini檔案,但是一方面由於Ini檔案主要用來儲存配置,用它來儲存大量資料感覺不太好。。。而且我要儲存的資料結構是多層的多叉樹,用ini儲存很難定義結構,最後還是決定使用XML。

一、XML檔案結構

XML檔案的結構性內容,包括節點關係以及屬性內容等等。元素是組成XML的最基本的單位,它由開始標記,屬性和結束標記組成。就是一個元素的例子,每個元素必須有一個元素名,元素可以若干個屬性以及屬性值。一個xml檔案的例子   例

〈?xml version="1.0" encoding="gb2312" ?〉   〈學生資料〉    〈學生〉         〈名字〉李四〈/名字〉         〈身份〉學生〈/身份〉         〈年齡 虛實歲="實"〉20.00〈/年齡〉    〈/學生〉   〈/學生資料〉  

第一行是 XML 宣告。它定義 XML 的版本 (1.0) 和所使用的編碼 (ISO-8859-1 = Latin-1/西歐字符集)。

下一行描述文件的根元素(像在說:“本文件是一個便籤”):學生資料

接下來 描述根的 子元素:學生,最後一行定義根元素的結尾;

XML 文件形成一種樹結構

XML 文件必須包含根元素。該元素是所有其他元素的父元素。

XML 文件中的元素形成了一棵文件樹。這棵樹從根部開始,並擴充套件到樹的最底端。

所有元素均可擁有子元素:

父、子以及同胞等術語用於描述元素之間的關係。父元素擁有子元素。相同層級上的子元素成為同胞(兄弟或姐妹)。

所有元素均可擁有文字內容和屬性(類似 HTML 中)。

二、C++讀寫XML檔案(使用tinyxml庫)

使用以下程式碼之前,需要下載TinyXml庫,幷包含到工程下,只需要包含tinystr.cpp tinystr.h tinyxml.cpp tinyxml.h tinyxmlerror.cpp tinyxmlparser.cpp  就可以了

(自己去搜吧。。。。。)