綠(lǜ)色資源網:您身邊最放(fàng)心的安全下載(zǎi)站! 最新軟件(jiàn)|熱門排行|軟件分(fèn)類|軟件專題|廠商大全

綠色資源網(wǎng)

技術教程
您的位置:首頁網絡編程Xml編程 → XML文檔(dàng)的基本操作

XML文檔的基本操作

我要評論 2009/06/19 18:15:56 來源:綠色資源(yuán)網 編輯:編輯整理 [ ] 評論:0 點擊:486次

已知有一個XML文檔(bookstore.xml)如下:

<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberons Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
</bookstore>

1、往<bookstore>節點中插入一個<book>節點(diǎn):

XmlDocument xmlDoc=new XmlDocument();
xmlDoc.Load("bookstore.xml");
XmlNode root=xmlDoc.SelectSingleNode("bookstore");//查找<bookstore>
XmlElement xe1=xmlDoc.CreateElement("book");//創建一(yī)個<book>節點
xe1.SetAttribute("genre","李讚紅");//配置該節點genre屬性
xe1.SetAttribute("ISBN","2-3631-4");//配置該節點ISBN屬性

XmlElement xesub1=xmlDoc.CreateElement("title");
xesub1.InnerText="CS從入門(mén)到精(jīng)通";//配置文(wén)本節點
xe1.AppendChild(xesub1);//添加到(dào)<book>節點中
XmlElement xesub2=xmlDoc.CreateElement("author");
xesub2.InnerText="候(hòu)捷";
xe1.AppendChild(xesub2);
XmlElement xesub3=xmlDoc.CreateElement("price");
xesub3.InnerText="58.3";
xe1.AppendChild(xesub3);

root.AppendChild(xe1);//添加到<bookstore>節點中
xmlDoc.Save("bookstore.xml");


//================
結(jié)果為:

<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberons Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
<book genre="李讚紅" ISBN="2-3631-4">
<title>CS從(cóng)入門到精通</title>
<author>候捷</author>
<price>58.3</price>
</book>
</bookstore>

2、修改節點:將genre屬性值為“李讚紅“的節點的genre值改(gǎi)為“update李讚紅”,將該節點的子節點<author>

的(de)文本(běn)修改為“亞勝(shèng)”。

XmlNodeList nodeList=xmlDoc.SelectSingleNode("bookstore").ChildNodes;//獲取bookstore節點的任何(hé)子節


foreach(XmlNode xn in nodeList)//遍曆任何子節點
{
XmlElement xe=(XmlElement)xn;//將子節(jiē)點類型轉換為XmlElement類型
if(xe.GetAttribute("genre")=="李讚紅")//假如genre屬性值為“李讚紅”
{
xe.SetAttribute("genre","update李讚紅(hóng)");//則修改該屬(shǔ)性為“update李讚紅(hóng)”

XmlNodeList nls=xe.ChildNodes;//繼續獲取xe子節點的任何子節點
foreach(XmlNode xn1 in nls)//遍曆
{
XmlElement xe2=(XmlElement)xn1;//轉換類型
if(xe2.Name=="author")//假如找到
{
xe2.InnerText="亞勝(shèng)";//則(zé)修改
break;//找到退出來就能夠了
}
}
break;
}
}

xmlDoc.Save("bookstore.xml");//保存。

//=================

最後結果為:

<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberons Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
<book genre="update李讚紅" ISBN="2-3631-4">
<title>CS從入(rù)門到精通</title>
<author>亞勝</author>
<price>58.3</price>
</book>
</bookstore>

3、刪(shān)除(chú) <book genre="fantasy" ISBN="2-3631-4">節點的genre屬性,刪除 <book genre="update李(lǐ)讚紅"

ISBN="2-3631-4">節點。

XmlNodeList xnl=xmlDoc.SelectSingleNode("bookstore").ChildNodes;

foreach(XmlNode xn in xnl)
{
XmlElement xe=(XmlElement)xn;

if(xe.GetAttribute("genre")=="fantasy")
{
xe.RemoveAttribute("genre");//刪除genre屬性
}
else if(xe.GetAttribute("genre")=="update李讚紅")
{
xe.RemoveAll();//刪除該(gāi)節點的全部內容
}
}
xmlDoc.Save("bookstore.xml");

//====================

最後(hòu)結果為:

<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book ISBN="2-3631-4">
<title>Oberons Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
<book>
</book>
</bookstore>

4、顯示任何(hé)數據。


XmlNode xn=xmlDoc.SelectSingleNode("bookstore");

XmlNodeList xnl=xn.ChildNodes;

foreach(XmlNode xnf in xnl)
{
XmlElement xe=(XmlElement)xnf;
Console.WriteLine(xe.GetAttribute("genre"));//顯示屬性值
Console.WriteLine(xe.GetAttribute("ISBN"));

XmlNodeList xnf1=xe.ChildNodes;
foreach(XmlNode xn2 in xnf1)
{
Console.WriteLine(xn2.InnerText);//顯示子節點點文本
}
}

public static string DataToXml(string _ip,string _xmlType,bool _issavexml,string

_contenttype,string _message,string _sendtime,string _toip)
        {
            //return null;
            DataParser dp = new DataParser();
            dp.Message = _message;
            dp.IP = _ip;
            dp.XmlType = _xmlType;
            dp.isSaveXml = _issavexml;
            dp.ContentType = _contenttype;
            dp.Sendtime = _sendtime;
            dp.Toip = _toip;
            XmlDocument doc = new XmlDocument();
            XmlDeclaration newDec = doc.CreateXmlDeclaration("1.0",null,null);
            doc.AppendChild(newDec);
            XmlElement newRoot = doc.CreateElement("Requests");
            doc.AppendChild(newRoot);
            XmlElement newtitle = doc.CreateElement("Request");
            newtitle.SetAttribute("time", dp.Sendtime);
            newRoot.AppendChild(newtitle);
            XmlElement from = doc.CreateElement("from");
            from.SetAttribute("ip", dp.IP);
            from.SetAttribute("type", dp.XmlType);
            from.SetAttribute("ctntype", dp.ContentType);

關鍵詞:XML

閱讀本文後您有什麽(me)感想? 已有(yǒu) 人(rén)給(gěi)出評價!

  • 1 歡迎喜歡
  • 1 白癡
  • 1 拜(bài)托
  • 1 哇
  • 1 加油
  • 1 鄙視
免费人欧美成又黄又爽的视频丨一本色道久久88综合日韩精品丨国产专区日韩精品欧美色丨午夜无遮挡男女啪啪视频丨国产欧美日韩综合精品一区二区丨亚洲精品无码不卡在线播HE丨亚洲精品国产精品国自产观看丨日韩国产高清av不卡