• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Life is Good.

            Enhance Tech and English
            隨筆 - 65, 文章 - 20, 評論 - 21, 引用 - 0
            數據加載中……

            .NET中XML操作(C#)

            using System;
            using System.Data;
            using System.Configuration;
            using System.Collections;
            using System.Web;
            using System.Web.Security;
            using System.Web.UI;
            using System.Web.UI.WebControls;
            using System.Web.UI.WebControls.WebParts;
            using System.Web.UI.HtmlControls;
            using System.Xml;
            using System.Text;

            public partial class _2008_Default2 : System.Web.UI.Page
            {
                XmlDocument xmldoc;
                XmlNode xmlnode;
                XmlElement xmlelem;

                protected void Page_Load(object sender, EventArgs e)
                {

                }

                private void makeXML()
                {
                    xmldoc = new XmlDocument();
                    //加入XML的聲明段落,<?xml version="1.0" encoding="gb2312"?>
                    XmlDeclaration xmldecl;
                    xmldecl = xmldoc.CreateXmlDeclaration("1.0", "gb2312", null);
                    xmldoc.AppendChild(xmldecl);

                    //加入一個根元素
                    xmlelem = xmldoc.CreateElement("", "Employees", "");
                    xmldoc.AppendChild(xmlelem);
                    //加入另外一個元素
                    for (int i = 0; i < 2; i++)
                    {

                        XmlNode root = xmldoc.SelectSingleNode("Employees");//查找<Employees>
                        XmlElement xe1 = xmldoc.CreateElement("Node");//創建一個<Node>節點
                        xe1.SetAttribute("genre", "李贊紅");//設置該節點genre屬性
                        xe1.SetAttribute("ISBN", "2-3631-4");//設置該節點ISBN屬性

                        XmlElement xesub1 = xmldoc.CreateElement("title");
                        xesub1.InnerText = "CS從入門到精通";//設置文本節點
                        xe1.AppendChild(xesub1);//添加到<Node>節點中
                        XmlElement xesub2 = xmldoc.CreateElement("author");
                        xesub2.InnerText = "候捷";
                        xe1.AppendChild(xesub2);
                        XmlElement xesub3 = xmldoc.CreateElement("price");
                        xesub3.InnerText = "58.3";
                        xe1.AppendChild(xesub3);

                        root.AppendChild(xe1);//添加到<Employees>節點中
                    }
                    //保存創建好的XML文檔
                    xmldoc.Save(Server.MapPath("data.xml"));
                }

                private void makeXMl2()
                {
                    XmlTextWriter xmlWriter;
                    string strFilename = Server.MapPath("data1.xml");

                    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();

                }

                protected void Button1_Click(object sender, EventArgs e)
                {
                    makeXML();
                    makeXMl2();
                }

                private void addxmldata()
                {
                    XmlDocument xmlDoc = new XmlDocument();
                    xmlDoc.Load(Server.MapPath("data.xml"));
                    XmlNode root = xmlDoc.SelectSingleNode("Employees");//查找<Employees>
                    XmlElement xe1 = xmlDoc.CreateElement("Node");//創建一個<Node>節點
                    xe1.SetAttribute("genre", "張三");//設置該節點genre屬性
                    xe1.SetAttribute("ISBN", "1-1111-1");//設置該節點ISBN屬性

                    XmlElement xesub1 = xmlDoc.CreateElement("title");
                    xesub1.InnerText = "C#入門幫助";//設置文本節點
                    xe1.AppendChild(xesub1);//添加到<Node>節點中
                    XmlElement xesub2 = xmlDoc.CreateElement("author");
                    xesub2.InnerText = "高手";
                    xe1.AppendChild(xesub2);
                    XmlElement xesub3 = xmlDoc.CreateElement("price");
                    xesub3.InnerText = "158.3";
                    xe1.AppendChild(xesub3);

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


                }
                protected void Button2_Click(object sender, EventArgs e)
                {
                    addxmldata();
                }
                protected void Button3_Click(object sender, EventArgs e)
                {
                    deleteXML();
                }
                private void deleteXML()//刪除結點
                {
                    XmlDocument xmlDoc=new XmlDocument();
                    xmlDoc.Load( Server.MapPath("data.xml") );
                    XmlNode root=xmlDoc.SelectSingleNode("Employees");
                    XmlNodeList xnl = xmlDoc.SelectSingleNode("Employees").ChildNodes;
                    for (int i = 0; i < xnl.Count; i++)
                    {
                        XmlElement xe = (XmlElement)xnl.Item(i);
                        if (xe.GetAttribute("genre") == "張三")
                        {
                            root.RemoveChild(xe);
                            if (i < xnl.Count) i = i - 1;
                        }
                    }
                    xmlDoc.Save(Server.MapPath("data.xml"));
                }

                private void updateXML()//修改結點的值(屬性和子結點)
                {
                    XmlDocument xmlDoc = new XmlDocument();
                    xmlDoc.Load(Server.MapPath("data.xml"));

                    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張三”

                            XmlNodeList nls = xe.ChildNodes;//繼續獲取xe子節點的所有子節點
                            foreach (XmlNode xn1 in nls)//遍歷
                            {
                                XmlElement xe2 = (XmlElement)xn1;//轉換類型
                                if (xe2.Name == "author")//如果找到
                                {
                                    xe2.InnerText = "亞勝";//則修改
                                }
                            }
                        }
                    }
                    xmlDoc.Save(Server.MapPath("data.xml"));//保存。

                }

                protected void Button4_Click(object sender, EventArgs e)
                {
                    updateXML();
                }

                protected void Button5_Click(object sender, EventArgs e)
                {
                    updateXML2();
                }

                private void updateXML2()//修改結點(添加結點的屬性和添加結點的自結點
                {
                    XmlDocument xmlDoc = new XmlDocument();
                    xmlDoc.Load(Server.MapPath("data.xml"));

                    XmlNodeList nodeList = xmlDoc.SelectSingleNode("Employees").ChildNodes;//獲取Employees節點的所有子節點

                    foreach (XmlNode xn in nodeList)
                    {
                        XmlElement xe = (XmlElement)xn;
                        xe.SetAttribute("test", "111111");

                        XmlElement xesub = xmlDoc.CreateElement("flag");
                        xesub.InnerText = "1";
                        xe.AppendChild(xesub);
                    }
                    xmlDoc.Save(Server.MapPath("data.xml"));
                }


                protected void Button6_Click(object sender, EventArgs e)
                {
                    RemoveChild();
                }

                private void RemoveChild()//刪除結點中的某一個屬性
                {
                    XmlDocument xmlDoc = new XmlDocument();
                    xmlDoc.Load(Server.MapPath("data.xml"));
                    XmlNodeList xnl = xmlDoc.SelectSingleNode("Employees").ChildNodes;
                    foreach (XmlNode xn in xnl)
                    {
                        XmlElement xe = (XmlElement)xn;
                        xe.RemoveAttribute("genre");//刪除genre屬性

                        XmlNodeList nls = xe.ChildNodes;//繼續獲取xe子節點的所有子節點
                        foreach (XmlNode xn1 in nls)//遍歷
                        {
                            XmlElement xe2 = (XmlElement)xn1;//轉換類型
                            if (xe2.Name == "flag")//如果找到
                            {
                                xe.RemoveChild(xe2);//則刪除
                            }
                        }
                    }
                    xmlDoc.Save(Server.MapPath("data.xml"));
                }

                private void readXMl()//按照文本文件讀取xml
                {
                    System.IO.StreamReader myFile = new System.IO.StreamReader(Server.MapPath("data.xml"), System.Text.Encoding.Default);
                    //注意System.Text.Encoding.Default

                    string myString = myFile.ReadToEnd();//myString是讀出的字符串
                    myFile.Close();

                    Response.Write(myString);

                }
                protected void Button7_Click(object sender, EventArgs e)
                {
                    readXMl();
                }
            }

            posted on 2010-05-31 16:17 Mike Song 閱讀(243) 評論(0)  編輯 收藏 引用

            国产成人无码精品久久久免费| 久久久久婷婷| 久久亚洲中文字幕精品一区| 久久婷婷国产剧情内射白浆| 日韩精品久久无码中文字幕| 久久青草国产精品一区| 国产高潮国产高潮久久久91 | 99久久无码一区人妻| 日韩亚洲国产综合久久久| 99久久精品国产一区二区| 久久青青草原国产精品免费| 亚洲国产精品嫩草影院久久| 久久精品九九亚洲精品| 色婷婷噜噜久久国产精品12p| 久久精品人人做人人妻人人玩| 久久中文精品无码中文字幕| 亚洲精品无码久久久久去q | 一本综合久久国产二区| 久久精品国产亚洲AV大全| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 国产免费久久精品丫丫| 久久丫精品国产亚洲av不卡 | 久久精品一区二区| 一本色综合网久久| 思思久久99热只有频精品66| 久久综合九色综合欧美狠狠| 漂亮人妻被黑人久久精品| 色诱久久av| 亚洲国产一成久久精品国产成人综合 | 国产精品18久久久久久vr| 久久久久久精品免费免费自慰| 国产精品伊人久久伊人电影 | 无码国内精品久久人妻蜜桃| 午夜精品久久久久久影视777| 91亚洲国产成人久久精品| 久久亚洲国产午夜精品理论片| 久久精品人成免费| 久久精品国产福利国产秒| 久久这里只精品国产99热| 欧美久久综合性欧美| 久久久中文字幕|