我用这段代码
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("../")+"myBlog\\xml\\"+Xmlname+".xml");XmlNode root = doc.SelectSingleNode("Root");XmlElement huifunode = doc.CreateElement("huifu");//创建一个Reply节点
XmlElement node = doc.CreateElement("Reply");//创建一个Reply节点//回复内容
XmlElement ReplyContentnode = doc.CreateElement("ReplyContent");
ReplyContentnode.InnerText = this.ReplyContent.Text;//设置文本节点
node.AppendChild(ReplyContentnode);//添加ReplyContentnode节点到<Reply>节点中
//回复时间
XmlElement ReplyTimenode = doc.CreateElement("ReplyTime");
ReplyTimenode.InnerText = DateTime.Now.ToString();//设置文本节点
node.AppendChild(ReplyTimenode);//添加ReplyTimenode节点到<Reply>节点中XmlElement ReplyUsernode = doc.CreateElement("ReplyUser");
ReplyUsernode.InnerText = this.Page.Session["username"].ToString();//设置文本节点
node.AppendChild(ReplyUsernode);//添加ReplyUsernode节点到<Reply>节点中
//huifunode.AppendChild(node);
root.AppendChild(huifunode);doc.Save(Server.MapPath("../")+"myBlog\\xml\\"+Xmlname+".xml");
写出来的xml文件是这样的
<huifu>
    <Reply>
      <ReplyContent>222</ReplyContent>
      <ReplyTime>2005-7-14 10:37:43</ReplyTime>
      <ReplyUser>kidd</ReplyUser>
    </Reply>
  </huifu>
  <huifu>
    <Reply>
      <ReplyContent>333</ReplyContent>
      <ReplyTime>2005-7-14 10:37:45</ReplyTime>
      <ReplyUser>kidd</ReplyUser>
    </Reply>
  </huifu>我想写成这样的,怎么改啊,谢谢了
   <huifu>
    <Reply>
      <ReplyContent>222</ReplyContent>
      <ReplyTime>2005-7-14 10:37:43</ReplyTime>
      <ReplyUser>kidd</ReplyUser>
    </Reply>
    <Reply>
      <ReplyContent>333</ReplyContent>
      <ReplyTime>2005-7-14 10:37:45</ReplyTime>
      <ReplyUser>kidd</ReplyUser>
    </Reply>
  </huifu>

解决方案 »

  1.   

    http://www.cnblogs.com/weekzero/archive/2005/07/02/178140.html#184943有详细的例子
      

  2.   

    yuewh491(帅的惊动了党)
    我添加了2次啊====================
    你这段程序执行了2次??
      

  3.   

    那你点两次肯定就出现2个huifu根节点拉!你做成一个循环不成吗?把huifu的子节点做到循环里
      

  4.   

    那你点两次肯定就出现2个huifu根节点拉!你做成一个循环不成吗?把huifu的子节点做到循环里
    ***********************
    就是不知道怎么做啊,呵呵
      

  5.   

    如果原来的xml立有huifu节点,可以这样XmlDocument doc = new XmlDocument();
    doc.Load(Server.MapPath("xml.xml"));
    XmlNode root = doc.SelectSingleNode("//huifu");
    //XmlElement huifunode = doc.CreateElement("huifu");//创建一个Reply节点
    XmlElement node = doc.CreateElement("Reply");//创建一个Reply节点//回复内容
    XmlElement ReplyContentnode = doc.CreateElement("ReplyContent");
    ReplyContentnode.InnerText = "ReplyContentnode";//设置文本节点
    node.AppendChild(ReplyContentnode);//添加ReplyContentnode节点到<Reply>节点中
    //回复时间
    XmlElement ReplyTimenode = doc.CreateElement("ReplyTime");
    ReplyTimenode.InnerText = DateTime.Now.ToString();//设置文本节点
    node.AppendChild(ReplyTimenode);//添加ReplyTimenode节点到<Reply>节点中XmlElement ReplyUsernode = doc.CreateElement("ReplyUser");
    ReplyUsernode.InnerText = "username";//设置文本节点
    node.AppendChild(ReplyUsernode);//添加ReplyUsernode节点到<Reply>节点中//huifunode.AppendChild(node);
    root.AppendChild(node);doc.Save(Server.MapPath("xml.xml"));
      

  6.   

    看你的xml文件似乎是同样的内容。
    ================
    //回复时间
    XmlElement ReplyTimenode = doc.CreateElement("ReplyTime");
    ReplyTimenode.InnerText = DateTime.Now.ToString();//设置文本节点
    node.AppendChild(ReplyTimenode);//添加ReplyTimenode节点到<Reply>节点中
    =================
    回复时间怎么是系统时间?
      

  7.   


    回复时间怎么是系统时间?*************
    这些都无所谓,我只想把Reply的东西都添加在huifu节点下面,能帮帮我吗
      

  8.   

    可以这样XmlDocument doc = new XmlDocument();
    doc.Load(Server.MapPath("xml.xml"));
    XmlNode root = doc.SelectSingleNode("//huifu");
    if(root == null){
    XmlElement huifunode = doc.CreateElement("huifu");//创建一个Reply节点
    doc.DocumentElement.AppendChild(huifunode);
    }
    root = doc.SelectSingleNode("//huifu");
    XmlElement node = doc.CreateElement("Reply");//创建一个Reply节点//回复内容
    XmlElement ReplyContentnode = doc.CreateElement("ReplyContent");
    ReplyContentnode.InnerText = "ReplyContentnode";//设置文本节点
    node.AppendChild(ReplyContentnode);//添加ReplyContentnode节点到<Reply>节点中
    //回复时间
    XmlElement ReplyTimenode = doc.CreateElement("ReplyTime");
    ReplyTimenode.InnerText = DateTime.Now.ToString();//设置文本节点
    node.AppendChild(ReplyTimenode);//添加ReplyTimenode节点到<Reply>节点中XmlElement ReplyUsernode = doc.CreateElement("ReplyUser");
    ReplyUsernode.InnerText = "username";//设置文本节点
    node.AppendChild(ReplyUsernode);//添加ReplyUsernode节点到<Reply>节点中root.AppendChild(node);doc.Save(Server.MapPath("xml.xml"));
      

  9.   

    我要是一开始没有huifu这个节点呢
      

  10.   

    if(root == null){
    XmlElement huifunode = doc.CreateElement("huifu");//创建一个Reply节点
    doc.DocumentElement.AppendChild(huifunode);
    }
    会创建一个,如果有就不用创建