• 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");//保存。

  • 相关阅读:
    第13周学习进度情况
    【Android进阶】获取Android软件的版本信息
    【Android进阶】Android程序与JavaScript之间的简单调用
    字符串长度
    约瑟夫问题
    输入n个数和输出调整后的n个数
    输入三个整数,按由小到大的顺序输出
    学校oj平台上不去
    输入10个整数
    输入三个字符串,按由小到大的顺序输出
  • 原文地址:https://www.cnblogs.com/jsping/p/2626997.html
Copyright © 2020-2023  润新知