c 編寫XML讀寫刪改功能

2021-08-25 12:24:50 字數 2943 閱讀 2672

在c#.net中如何操作xml

需要新增的命名空間:

using system.xml;

定義幾個公共物件:

xmldocument xmldoc ;

xmlnode xmlnode ;

xmlelement xmlelem ;

1,建立到伺服器同名目錄下的xml檔案:

xmlnode root=xmldoc.selectsinglenode("employees");//查詢

xmlelement xe1=xmldoc.createelement("node");//建立乙個節點

xe1.setattribute("genre","李讚紅");//設定該節點genre屬性

xe1.setattribute("isbn","2-3631-4");//設定該節點isbn屬性

//結果:在同名目錄下生成了名為data.xml的檔案,內容如下,

<?xml version="1.0"?>

cs從入門到精通

候捷58.3

cs從入門到精通

候捷58.3

xmlwriter = new xmltextwriter(strfilename,encoding.default);//建立乙個xml文件

xmlwriter.formatting = formatting.indented;

xmlwriter.writestartdocument();

xmlwriter.writestartelement("employees");

xmlwriter.writestartelement("node");

xmlwriter.writeattributestring("genre","李讚紅");

xmlwriter.writeattributestring("isbn","2-3631-4");

xmlwriter.writestartelement("title");

xmlwriter.writestring("cs從入門到精通");

xmlwriter.writeendelement();

xmlwriter.writestartelement("author");

xmlwriter.writestring("候捷");

xmlwriter.writeendelement();

xmlwriter.writestartelement("price");

xmlwriter.writestring("58.3");

xmlwriter.writeendelement();

xmlwriter.writeendelement();

xmlwriter.close();

//結果:

<?xml version="1.0" encoding="gb2312"?>

cs從入門到精通

候捷58.3

2,新增乙個結點:

//結果:在xml原有的內容裡新增了乙個結點,內容如下,

<?xml version="1.0"?>

cs從入門到精通

候捷58.3

cs從入門到精通

候捷58.3

c#入門幫助

高手158.3

3,修改結點的值(屬性和子結點):

xmlnodelist nodelist=xmldoc.selectsinglenode("employees").childnodes;//獲取employees節點的所有子節點

foreach(xmlnode xn in nodelist)//遍歷所有子節點

{xmlelement xe=(xmlelement)xn;//將子節點型別轉換為xmlelement型別

if(xe.getattribute("genre")=="張三")//如果genre屬性值為「張三」

{xe.setattribute("genre","update張三");//則修改該屬性為「update張三」

//結果:將原來的所有結點的資訊都修改了,xml的內容如下,

<?xml version="1.0"?>

cs從入門到精通

候捷58.3

cs從入門到精通

候捷58.3

c#入門幫助

亞勝158.3

xmlnodelist nodelist=xmldoc.selectsinglenode("employees").childnodes;//獲取employees節點的所有子節點

foreach(xmlnode xn in nodelist)

{xmlelement xe=(xmlelement)xn;

xe.setattribute("test","111111");

//結果:每個結點的屬性都新增了乙個,子結點也新增了乙個,內容如下,

<?xml version="1.0"?>

cs從入門到精通

候捷58.3

1cs從入門到精通

候捷58.3

1c#入門幫助

亞勝158.31

//]結果:刪除了結點的乙個屬性和結點的乙個子結點,內容如下,

<?xml version="1.0"?>

cs從入門到精通

候捷58.3

cs從入門到精通

候捷58.3

c#入門幫助

亞勝158.3

//]結果:刪除了符合條件的所有結點,原來的內容:

<?xml version="1.0"?>

cs從入門到精通

候捷58.3

cs從入門到精通

候捷58.3

c#入門幫助

高手158.3

c#入門幫助

高手158.3

刪除後的內容:

<?xml version="1.0"?>

cs從入門到精通

候捷58.3

cs從入門到精通

候捷58.3

C 實現XML文件的增刪改查功能示例

1 建立例項xml檔案 books.xml everyday italian giada de laurentiis 2005 30.00 harry potter j k.rowling 2005 29.99 xquery kick start james mcgovern per bothner...

C 讀寫XML檔案

phone.xml 加菲爾德 5555555 紐約26 10 1978 邁克6666666 紐約12 02 1978 使用document讀取及寫入xml方法 使用xmltextwriter寫入xml方法 writer.writestartdocument writer.writestartelem...

C 讀寫XML檔案

using system.xml 初始化乙個xml例項 xmldocument xml new xmldocument 指定乙個節點 xmlnode root xml.selectsinglenode root 獲取節點下所有直接子節點 xmlnodelist childlist root.chil...