• xml的几种用法方法


    using System;

    using System.Collections;

    using System.ComponentModel;

    using System.Data;

    using System.Drawing;

    using System.Web;

    using System.Web.SessionState;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.HtmlControls;

    using System.Xml;

    private XmlDocument xmlDoc;

            //load xml file

            private void LoadXml()

            {

                xmlDoc=new XmlDocument();

                xmlDoc.Load(Server.MapPath("User.xml"));

            }

            //添加节点

            private void AddElement()

            {

               

                LoadXml();

                XmlNode xmldocSelect=xmlDoc.SelectSingleNode("user");

               

                XmlElement el=xmlDoc.CreateElement("person"); //添加person节点

                el.SetAttribute("name","风云"); //添加person节点的属性"name"

                el.SetAttribute("sex","女");   //添加person节点的属性 "sex"

                el.SetAttribute("age","25");   //添加person节点的属性 "age"

               

                 XmlElement xesub1=xmlDoc.CreateElement("pass"); //添加person节点的里的节点

                 xesub1.InnerText="123";//设置文本节点

                 el.AppendChild(xesub1);

                 XmlElement xesub2=xmlDoc.CreateElement("Address");

                 xesub2.InnerText="昆明";//设置文本节点

                 el.AppendChild(xesub2);

                xmldocSelect.AppendChild(el);

                xmlDoc.Save(Server.MapPath("user.xml"));

            }

           

            //修改节点

            private void UpdateElement()

            {

                LoadXml();

                XmlNodeList nodeList=xmlDoc.SelectSingleNode("user").ChildNodes;//获取bookstore节点的所有子节点

                foreach(XmlNode xn in nodeList)//遍历所有子节点

                {

                    XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型

                    if(xe.GetAttribute("name")=="风云")//如果name属性值为“风云”

                    {

                        xe.SetAttribute("name","发明");

                       

                        //如果下面有子节点在下走

                         XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点

                        foreach(XmlNode xn1 in nls)//遍历

                        {

                           XmlElement xe2=(XmlElement)xn1;//转换类型

                            if(xe2.Name=="pass")//如果找到

                            {

                                xe2.InnerText="66666";//则修改

                                break;

                            }

                        }

                        break;

                    }

                }

               xmlDoc.Save(Server.MapPath("user.xml"));//保存

            }

            //删出节点

            private void deleteNode()

            {

               

                LoadXml();

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

                foreach(XmlNode xn in xnl)

                {

                    XmlElement xe=(XmlElement)xn;

                   

                    if(xe.GetAttribute("name")=="发明")

                    {

                        //xe.RemoveAttribute("name");//删除name属性

                        xe.RemoveAll();//删除该节点的全部内容

                       

                        break;

                    }

                   

                }

                xmlDoc.Save(Server.MapPath("user.xml"));//保存

            }

            private void showIt()

            {

                LoadXml();

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

                XmlNodeList xnl=xn.ChildNodes;

      

                foreach(XmlNode xnf in xnl)

                {

                    XmlElement xe=(XmlElement)xnf;

    //                Console.WriteLine(xe.GetAttribute("name"));//显示属性值

    //                Console.WriteLine(xe.GetAttribute("sex"));

    //

    //                XmlNodeList xnf1=xe.ChildNodes;

    //                foreach(XmlNode xn2 in xnf1)

    //                {

    //                    Console.WriteLine(xn2.InnerText);//显示子节点点文本

    //                }

                }

            }

       

    Xml的样式:

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

    <user>

      <person>

      </person>

      <person name="风拉" sex="男" age="25">

        <pass>123</pass>

        <Address>大明</Address>

      </person>

      <person name="风云" sex="女" age="25">

        <pass>123</pass>

        <Address>昆明</Address>

      </person>

    </user>

    本篇文章来源于 站长资讯网 原文链接:http://www.chinahtml.com/0611/aspnet-11641648408610.html

  • 相关阅读:
    bzoj 2138: stone
    LOJ #6062. 「2017 山东一轮集训 Day2」Pair
    bzoj 5341: [Ctsc2018]暴力写挂
    UOJ #356. 【JOI2017春季合宿】Port Facility
    UOJ #357. 【JOI2017春季合宿】Sparklers
    UOJ #349. 【WC2018】即时战略
    bzoj 3600: 没有人的算术
    Codeforces 960G. Bandit Blues
    codeforces524E
    codeforces193B
  • 原文地址:https://www.cnblogs.com/xuchi/p/2076309.html
Copyright © 2020-2023  润新知