首页 > 代码库 > asp.net操作xml

asp.net操作xml

下面是xml文档内容:

<content width="368" height="450" bgcolor="cccccc" loadercolor="ffffff" panelcolor="5d5d61" buttoncolor="5d5d61" textcolor="ffffff">  <page src="http://www.mamicode.com/pages/01.jpg" />  <page src="http://www.mamicode.com/pages/01.jpg" />  <page src="http://www.mamicode.com/pages/01.jpg" />  <page src="http://www.mamicode.com/pages/01.jpg" />  <page src="http://www.mamicode.com/pages/01.jpg" /></content>

对xml进行添加操作:

protected void GetXmlData()    {        //提取xml文档        XmlDocument xd = new XmlDocument();        xd.Load(Server.MapPath("~/xml/Pages.xml"));        XmlNode xn = xd.DocumentElement;//获取根节点        XmlElement newItem = xd.CreateElement("page");//创建元素        newItem.SetAttribute("src", "pages/01.jpg");  //赋值        xn.AppendChild(newItem);        xd.Save(Server.MapPath("~/xml/Pages.xml"));//保存xml文档    }

对xml进行删除操作:

protected void DelXmlData()    {        //提取xml文档        XmlDocument xd = new XmlDocument();        xd.Load(Server.MapPath("~/xml/Pages.xml"));        XmlNode xn = xd.DocumentElement;//获取根节点        XmlNodeList items = xn.ChildNodes; //获取节点列表        //删除所有节点        int len = items.Count;  //不可用i<items.Count        for (int i = 0; i < len; i++)        {            XmlElement page = (XmlElement)items[0];            xn.RemoveChild(page);         }        xd.Save(Server.MapPath("~/xml/Pages.xml"));//保存xml文档    }

当然可以不用for循环删除,可以用

xn.RemoveAll();

但是它会同时删除content 根节点的属性,所以这里我用了循环删除。