程式集 C Xml解析

2021-07-24 12:33:19 字數 2970 閱讀 8449

題注:

最近一直在搞xml,這次記錄下c#解析xml的過程,個人覺得相對tinyxml還是c#自帶的xmldocument更好用。

ctrl + shift + n 建立乙個命令控制台專案 xmltest

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.xml; //c#自帶的xml解析類

namespace xmltest

}}

在程式位置找到生成的xml文件:

<?xml version="1.0" encoding="utf-8"?>

xmlns

="www.workshop.com"

>

>

>

fanucmanufacturer

>

units

="$"

>

20000price

>

device1

>

>

>

mazacmanufacturer

>

units

="$"

>

20000price

>

device2

>

devices

>

很顯然生成的xml很簡單,但是上面用**去建立xml的過程很繁瑣,不過可以看出來通過**來建立xml具有動態性,可以根據自己需要的東西來動態建立xml文件,當然在實際的使用過程中,建立的過程主要和框架設計有關,像上面比價重複的東西都可以提取到乙個函式中去,或者根據自定義的資料結構去格式化xml文件。

現在我們有了workshop.xml,我們通過xml解析器去讀取修改xml文件中的內容,在這個過程中我們將使用xpath來定位xml中的資料。

源xml文件:

<?xml version="1.0" encoding="utf-8"?>

xmlns:m

="localtest"

xmlns

="localtest"

>

>

>

>

5axes

>

>

30theight

>

info

>

country

="jap"

>

fanucmanufacturer

>

>

50000price

>

device

>

>

>

>

40axes

>

>

30theight

>

info

>

country

="cn"

>

jdmanufacturer

>

>

50000price

>

device

>

>

>

>

15axes

>

>

30theight

>

info

>

country

="cn"

>

jdmanufacturer

>

>

50000price

>

device

>

>

>

>

8axes

>

>

20theight

>

info

>

country

="gem"

>

dmgmanufacturer

>

>

50000price

>

device

>

devices

>

workshop.xml是乙個簡單的用於描述車間裡使用裝置範例的xml文件。在c#中通過xpath來定位price節點

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.xml; // c#自帶的xml解析類

using system.io; // stringwriter使用

namespace xmltest

:manufacturer", prefix );

xmlnodelist xnodelist = xdoc.selectnodes(sxpath, xnamespacemanager);

string m = tostring(xnodelist);

// 結果寫到檔案裡

filestream f = file.openwrite("output.xml");

byte byts = system.text.encoding.default.getbytes( m );

f.write(byts, 0, byts.length);

f.close();

} public static string tostring(xmlnodelist xmlnodelist)

return stringwriter.tostring();

}}}

篩選結果output.xml:

fanuc

jdjd

dmg

C XML解析方式例項解析

c xml解析通過xpath的方式是如何辦到的呢?具體的操作步驟是什麼呢?那麼下面我們就向你介紹通過xpath的方式來實現c xml解析,希望對你了解c xml解析有所幫助。c xml解析通過xpath的方式的步驟 1 需要先載入文件,然後再讀取想要的節點值。xml文件 protected xmld...

C XML解析方式例項解析

c xml解析通過xpath的方式是如何辦到的呢?具體的操作步驟是什麼呢?那麼下面我們就向你介紹通過xpath的方式來實現c xml解析,希望對你了解c xml解析有所幫助。c xml解析通過xpath的方式的步驟 1 需要先載入文件,然後再讀取想要的節點值。xml文件 protected xmld...

C XML解析方式例項解析1

c xml解析通過xpath的方式是如何辦到的呢?具體的操作步驟是什麼呢?那麼下面我們就向你介紹通過xpath的方式來實現c xml解析,希望對你了解c xml解析有所幫助。c xml解析通過xpath的方式的步驟 1 需要先載入文件,然後再讀取想要的節點值。xml文件 protected xmld...