代码改变世界

更新XML文件要经历几个步骤

2007-10-02 23:47  稻草人  阅读(822)  评论(1)    收藏  举报

(1) 先创建一个XML文档对象,同时加载对应的XML文件
(2) 获取XML文档对象的根节点
(3) 创建一个元素,同时给该无素初始化
(4) 在对应的位置放置该元素
(5) 创建步骤4)中元素对应的子元素,同时在4)中的元素下面添加对应的无素(即给节点赋给节点值)
(6)记住将修改完毕的XML文件存盘,这时候需要调用XMLDocument对象的Save方法

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml;

public partial class XML_Load : System.Web.UI.Page
{
    
private void SaveXMLData_nodemode()
    
{
        
try
        
{
            XmlDocument xdoc 
= new XmlDocument();
            xdoc.Load(Server.MapPath(
"phonebook.xml"));
            XmlElement parentNode 
= xdoc.CreateElement("menber");
            xdoc.DocumentElement.PrependChild(parentNode);
            XmlElement nameNode 
= xdoc.CreateElement("name");
            XmlElement telphoneNode 
= xdoc.CreateElement("telphone");
            XmlElement qqNode 
= xdoc.CreateElement("QQ");
            XmlElement msnNode 
= xdoc.CreateElement("MSN");
            XmlElement cellphoneNode 
= xdoc.CreateElement("cellphone");
            XmlElement workNode
=xdoc.CreateElement ("work");
            XmlElement addressNode 
= xdoc.CreateElement("address");
            XmlElement emailNode 
= xdoc.CreateElement("email");
            XmlText cellphoneText
=xdoc.CreateTextNode(Request.Form.Get("cellphoneNode"));
            XmlText nametext 
= xdoc.CreateTextNode(Request.Form.Get("name"));
            XmlText telphonetext 
= xdoc.CreateTextNode(Request.Form.Get("telphone"));
            XmlText QQText 
= xdoc.CreateTextNode(Request.Form.Get("QQ"));
            XmlText msnNodeText 
= xdoc.CreateTextNode(Request.Form.Get("cellphone"));
            XmlText workNodeText 
= xdoc.CreateTextNode(Request.Form.Get("work"));
            XmlText addressNodeText 
= xdoc.CreateTextNode(Request.Form.Get("address"));
            XmlText emailNodeText 
= xdoc.CreateTextNode(Request.Form.Get("email"));
            parentNode.AppendChild(nameNode);
            parentNode.AppendChild(telphoneNode);
            parentNode.AppendChild(qqNode);
            parentNode.AppendChild(msnNode);
            parentNode.AppendChild(cellphoneNode);
            parentNode.AppendChild(workNode);
            parentNode.AppendChild(addressNode);
            parentNode.AppendChild(emailNode);
            nameNode.AppendChild(nametext);
            telphoneNode.AppendChild(telphonetext);
            qqNode.AppendChild(QQText);
            msnNode.AppendChild(msnNodeText);
            cellphoneNode.AppendChild(cellphoneText);
            workNode.AppendChild(workNodeText);
            addressNode.AppendChild(addressNodeText);
            emailNode.AppendChild(emailNodeText);
            xdoc.Save(Server.MapPath(
"phonebook.xml"));
        }

        
catch(Exception ce)
        
{
            Console.WriteLine(ce.Message);
        }


    }










    
protected void Page_Load(object sender, EventArgs e)
    
{

    }

    
protected void Button1_Click(object sender, EventArgs e)
    
{
        SaveXMLData_nodemode();
        Exception ce 
= new Exception();
        Label1.Text 
= ce.Message;
    }


}