您的位置:首页 > 编程语言 > C#

C#中对XML的操作

2014-01-15 17:07 323 查看
现在有一个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");//保存
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: