• <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)  編輯 收藏 引用

            久久精品国产久精国产思思| 国产Av激情久久无码天堂| 香蕉久久夜色精品国产小说| 国产ww久久久久久久久久| 久久无码国产| 狠狠狠色丁香婷婷综合久久俺| 93精91精品国产综合久久香蕉| 中文字幕无码久久久| 精品综合久久久久久888蜜芽| 久久精品成人影院| 久久精品国产精品亚洲毛片| 伊人色综合九久久天天蜜桃| 色偷偷888欧美精品久久久| 久久www免费人成看片| 成人精品一区二区久久| 久久精品中文闷骚内射| 久久人做人爽一区二区三区| 韩国三级中文字幕hd久久精品| 久久青青草原精品国产| 久久精品视频一| 欧美激情精品久久久久久久| 久久综合综合久久狠狠狠97色88| 精品伊人久久大线蕉色首页| 午夜视频久久久久一区 | 2021国产精品久久精品| 久久国产一区二区| 久久精品aⅴ无码中文字字幕不卡 久久精品aⅴ无码中文字字幕重口 | 久久婷婷人人澡人人爽人人爱| 2021久久精品国产99国产精品| 亚洲午夜福利精品久久| 国产真实乱对白精彩久久| 色综合久久久久| 欧美亚洲国产精品久久蜜芽| 久久久久人妻一区精品性色av| …久久精品99久久香蕉国产| 亚洲国产成人精品女人久久久| 国产精品九九久久精品女同亚洲欧美日韩综合区| 久久天堂AV综合合色蜜桃网| 欧美黑人激情性久久| 久久久久久久亚洲Av无码| 久久99精品久久久久婷婷|