zoukankan      html  css  js  c++  java
  • C#中对XML的操作

    现在有一个xml文件,名称:BookStore.xml,数据如下:

    <?xml version="1.0" encoding="gb2312"?>
    <bookstore>
      <book genre="fantasy" ISBN="2-3631-4">
        <title>Oberon's Legacy</title>
        <author>Corets, Eva</author>
        <price>5.95</price>
      </book>
    </bookstore>

    现在对这个xml文件进行如下操作:

    (1)往<bookstore>节点中插入一个<book>节点:

      XmlDocument doc=new XmlDocment();

      doc.Load("BookStore.xml");

      XmlNode node=doc.SelectSingleNode("bookstore");  //查找节点

      XmlElement element=doc.CreateElement("book");

      element.SetAttribute("..属性名称..","..属性值..")   //此处设置节点的属性

      XmlElement nodeNew=doc.CreateElement("title");  //在book节点中创建新的节点

      nodeNew.InnerText="......"; //给新节点赋值

      element.AppendChild(nodeNew);  //在book后面添加子节点

      node.AppendChild(element);

      doc.Save("BookStore.xml");

    (2)修改XML中的节点

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

      //遍历所有子节点

      foreach(XmlNode cnode in nodeList)

      {

        XmlElement element=(XmlElement)cnode; 

        if(element.GetAttribute("..属性名..")=="..值..")  //如果查找到了值

        cnode.SetAttribute("..属性名..","..需要设置的值..");

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

        foreach(XmlNode xn1 in nls)//遍历
           {
              XmlElement xe2=(XmlElement)xn1;//转换类型
              if(xe2.Name=="author")//如果找到
              {
                 xe2.InnerText="..值..";//则修改值
                 break;//退出

              }

        }

        break;

        }

      }

      xmlDoc.Save("bookstore.xml");//保存。

  • 相关阅读:
    【t066】致命的珠宝
    【t081】序列长度
    【t081】序列长度(贪心做法)
    【t093】外星密码
    【codeforces 761A】Dasha and Stairs
    【codeforces 761B】Dasha and friends
    【codeforces 761C】Dasha and Password(动态规划做法)
    【codeforces 761C】Dasha and Password(贪心+枚举做法)
    【codeforces 761D】Dasha and Very Difficult Problem
    【u224】传送机
  • 原文地址:https://www.cnblogs.com/jsping/p/2626997.html
Copyright © 2011-2022 走看看