加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XML的增、删、查、改

发布时间:2020-12-16 05:24:30 所属栏目:百科 来源:网络整理
导读:?xml version="1.0" encoding="utf-8"?birthday NO1 id="1" date type="a"1/date name2/name /NO1 NO2 id="2" date type="b"3/date name4/name /NO2/birthday ( 增 )添加一个N03节点,节点有type属性,N03节点里面还包衣个子节点name protected void Page_Loa
<?xml version="1.0" encoding="utf-8"?>
<birthday>
  <NO1 id="1">
    <date type="a">1</date>
    <name>2</name>
  </NO1>
  <NO2 id="2">
    <date type="b">3</date>
    <name>4</name>
  </NO2>
</birthday>

( )添加一个N03节点,节点有type属性,N03节点里面还包衣个子节点name
protected void Page_Load(object sender,EventArgs e)
        {
            XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.Load(@"F:XMLFile1.xml");
            XmlNode root = xmlDoc.SelectSingleNode("birthday");//查找<birthday>
            XmlElement xe1 = xmlDoc.CreateElement("NO3");//创建一个<NO3>节点
            xe1.SetAttribute("type","a");//设置该节点type属性

            XmlElement xesub1 = xmlDoc.CreateElement("name");
            xesub1.InnerText = "C#从入门到精通";//设置文本节点
            xe1.AppendChild(xesub1);//添加到<NO3>节点中
            root.AppendChild(xe1);//添加到<birthday>节点中
            xmlDoc.Save(@"F:XMLFile1.xml");

        }

( )删除NO3里面的属性和子级
XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.Load(@"F:XMLFile1.xml");
            XmlNodeList xnl = xmlDoc.SelectSingleNode("birthday").ChildNodes;
            foreach (XmlNode xn in xnl)
            {
                XmlElement xe = (XmlElement)xn;
                if (xe.GetAttribute("type") == "a")
                {
                    xe.RemoveAll();//删除该节点的全部内容
                    //xe.RemoveAttribute("type");//删除type属性
                }
            }
            xmlDoc.Save(@"F:XMLFile1.xml");//保存。

( )把brithday的子节点属性ID=1,改成ID=4
XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.Load(@"F:XMLFile1.xml");
            XmlNodeList nodeList = xmlDoc.SelectSingleNode("birthday").ChildNodes;//获取birthday节点的所有子节点
            foreach (XmlNode xn in nodeList)//遍历所有子节点
            {
                XmlElement xe = (XmlElement)xn;//将子节点类型转换为XmlElement类型
                if (xe.GetAttribute("id") == "1")//如果type属性值为“1”
                {
                    xe.SetAttribute("id","4");//则修改该属性为“4”
                }
            }
            xmlDoc.Save(@"F:XMLFile1.xml");//保存。

( )查询节点最外层,含有Id属性的值,和显示子节点的文本
protected void Page_Load(object sender,EventArgs e)
        {
            XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.Load(@"F:XMLFile1.xml");
            XmlNode xn = xmlDoc.SelectSingleNode("birthday");
            XmlNodeList xnl = xn.ChildNodes;
            foreach (XmlNode xnf in xnl)
            {
                XmlElement xe = (XmlElement)xnf;
                TextBox1.Text = TextBox1.Text+xe.GetAttribute("id");//显示属性值
                XmlNodeList xnf1 = xe.ChildNodes;
                foreach (XmlNode xn2 in xnf1)
                {
                    TextBox2.Text= TextBox2.Text+xn2.InnerText;//显示子节点的文本
                }
            }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读