關於XML的讀寫操作以及查詢操作

2021-06-28 16:06:50 字數 1380 閱讀 7251

我們在做一些專案的時候,往往會用xml來配置內部成員,部署他們之間的關係,使得程式執行起來不至於太混亂,今天就稍微講解一下關於xml的一些用法。

xml檔案的指令碼形式非常的簡單,所以xml檔案不一定由程式設計師來編寫,關於專案中元素之間的層級關係,策劃是最清除的,所有有時候xml檔案是由策劃或者部分美工來編寫,或者是程式設計師給他們編寫一些內定好形式的xml生成器。下面我就我曾經寫過的乙個生成器簡單的做一些關於xml檔案的讀寫以及查詢操作。

首先是建立xml檔案:(以根節點product為例)

//例項化乙個xml文件

xmldocument xmldoc = new xmldocument();

//建立root節點,最上層節點

xmlelement

這個就生成只有乙個根節點的xml檔案。下面就是往根節點下面新增若干子節點以及元素。

//建立下乙個節點

xmlelement root = xmldoc.createelement("root");

//下一級節點

xmlelement type = xmldoc.createelement("type");

接下來就是給根節點product下面的root,和type節點賦予屬性:

//設定節點屬性

root.setattribute("kind", rootkind);

type.setattribute("type", typetype);

(rootkind,typetype為string型別,是自定義的)

若想把type節點作為root的子節點,則操作如下:

然後獲取根節點,並新增root節點,其操作如下:

//獲取xml根節點  

xmlnode root_node = xmldoc.selectsinglenode("product");

最後新增的檔案中:

這樣就生成了擁有根節點product,以及root,和type兩個子節點(type為root的子節點)。

同樣的 若是想在某個節點下面新增若干個子節點,其操作方法如上。

關於xml讀取查詢操作,比如,我想取出product節點下的所有子節點的屬性,儲存於鍊錶中。其操作如下:

//獲取xml根節點  

xmlnode root_node = xmldoc.selectsinglenode("product");

foreach (xmlnode xm in root_node)

kindvalue.add(xe.getattribute("kind"));

// print(xe.getattribute("kind"));}

(typevalue,kindvalue是定義好的兩個list),

這樣就把type和kind節點的所有屬性都儲存於兩個list中。

XML 讀寫(基於流的操作)

基於流的 xml 處理 net framework 允許你使用 system.xml 命名空間 以及它的子命名空間 中的一組類來操作 xml 資料。有兩個基於流的類 xmltextreader 和 xmltextwriter 它們對簡單的 xml 處理非常有效。net 通過兩種方式把 xml 資料寫...

C 中XML檔案的讀寫操作

先上要解析的xml檔案 我這邊的xml名為config.xml,也請不要糾結這些標籤的含義,就這麼個意思 23 46 2 34本例中要求此xml檔案要放在跟exe檔案同級目錄下面,也就是debug目錄下面。類原始碼如下 using system using system.collections.ge...

資料的儲存 以及讀寫操作

裡面包括各種地方的讀寫操作 把字串儲存為txt格式,並存至sd卡 應用程式在執行的過程中如果需要向手機上儲存資料,一般是把資料儲存在sdcard中的。但是需要考慮沒有sd卡的情況 通過context.getexternalfilesdir 方法可以獲取到 sdcard android data 你的...