• <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 閱讀(248) 評論(0)  編輯 收藏 引用

            国产精品久久久久天天影视| 伊人久久大香线焦AV综合影院| 999久久久国产精品| 国产一区二区三精品久久久无广告| 久久影院午夜理论片无码| 人妻精品久久无码区| 国产成人久久精品麻豆一区| 精品久久久久久久久免费影院| 国产精品18久久久久久vr| 亚洲日韩欧美一区久久久久我 | 99久久久精品免费观看国产| 久久精品国产99国产精品 | 夜夜亚洲天天久久| 伊人久久大香线蕉av不卡| 精品国产乱码久久久久久浪潮| 东方aⅴ免费观看久久av | 韩国三级中文字幕hd久久精品| 亚洲AV日韩精品久久久久久久| 日本五月天婷久久网站| 国产精品久久自在自线观看| 一本色道久久88综合日韩精品 | 亚洲&#228;v永久无码精品天堂久久 | 麻豆精品久久久久久久99蜜桃| 99久久精品免费观看国产| 久久综合精品国产二区无码| 性高湖久久久久久久久AAAAA| 丰满少妇人妻久久久久久4| 久久久一本精品99久久精品66| 久久久精品久久久久影院| 久久国产成人| 久久精品国产99久久丝袜| 久久九九亚洲精品| 久久99精品国产麻豆宅宅| 亚洲乱码精品久久久久..| 免费精品久久天干天干| 久久久久久精品免费看SSS| 久久久久亚洲AV成人网人人网站| 亚洲国产精品成人AV无码久久综合影院 | 一本大道久久东京热无码AV | 国产精品久久久久久影院| 99re这里只有精品热久久|