糯米文學吧

位置:首頁 > 計算機 > C語言

c語言解析xml

C語言1.63W

根據導師的要求,要用C語言解析一個xml文件,用於對升級文件進行合法性判斷,進而對軟件進行升級。

 c語言解析xml

上網搜了一些關於這方面的資料,發現有一些是用C++或Java等語言寫的,當然也可以直接下載開源的代碼,也可以下載庫文件直接使用。但考慮到對xml文件解析其實用不到那麼多功能,也考慮到硬件方面無法支持這麼大的庫文件。因此,決定自己寫一段代碼用於解析簡單的xml文件。

看了一些源代碼,發現他們主要使用樹型結構來實現對xml 的解析,由於能力有限吧,感覺很麻煩,可能佔用內存也會很大,所以我苦苦思索了好久,決定使用遞歸的方法解析xml文件,每當解析出相應的數值時,可以立即對這些數值進行判定是否合法,如果合法的`話,可以繼續解析;如果不合法的話,就可以直接跳出。

對這個xml文件,我做了很嚴格的定義:

<主標籤 屬性值1>

<子標籤> 屬性值2

<子標籤>

<下級子標籤>屬性值3

在這裏,可以在標籤間的任何地方進行註釋,但禁止在標籤內部進行註釋;標籤可以有多層嵌套,但必須保證標籤有結束標誌,嵌套必須合法。

屬性值的規定方面,可以正確的解析屬性值2和屬性值3,但不會解析屬性值1,屬性值1可以起到註釋的作用。

下面貼出一些主要的代碼:

首先讀取xml文件:







標籤:XML 解析 語言