/// <summary>
    /// 将发帖内容保存到XML文件中的方法
    /// </summary>
    /// <param name="filename">XML文件路径全名</param>
    /// <param name="title">XML文件路径全名</param>
    /// <param name="content">XML文件路径全名</param>
    /// <param name="user">XML文件路径全名</param>
    public void AddXML(string filename,string title,string content,string user)
    {
        //初始化XML文档操作类
        XmlDocument mydoc = new XmlDocument();
        //加载指定的XML文件
        mydoc.Load(filename);        //添加元素-帖子主题
        XmlElement ele = mydoc.CreateElement("title");
        XmlText text = mydoc.CreateTextNode(title);
        //添加元素-发帖时间
        XmlElement ele1 = mydoc.CreateElement("posttime");
        XmlText text1 = mydoc.CreateTextNode(DateTime.Now.ToString());
        //添加元素-内容
        XmlElement ele2 = mydoc.CreateElement("content");
        XmlText text2 = mydoc.CreateTextNode(content);
        //添加元素-发帖人
        XmlElement ele3 = mydoc.CreateElement("postuser");
        XmlText text3 = mydoc.CreateTextNode(user);        //添加文件的节点-msgrecord
        XmlNode newElem = mydoc.CreateNode("element", "xmlrecord", "");
        //在节点中添加元素
        newElem.AppendChild(ele);
        newElem.LastChild.AppendChild(text);
        newElem.AppendChild(ele1);
        newElem.LastChild.AppendChild(text1);
        newElem.AppendChild(ele2);
        newElem.LastChild.AppendChild(text2);
        newElem.AppendChild(ele3);
        newElem.LastChild.AppendChild(text3);
        //将节点添加到文档中
        XmlElement root = mydoc.DocumentElement;
        root.AppendChild(newElem);        //获取文件路径
        int index = filename.LastIndexOf(@"\");
        string path = filename.Substring(0, index);
        //新文件名
 path = path + @"\" + xmlfilename + "file.xml";               //文件创建后必须关闭,否则其他程序无法调用
        FileStream mystream =File.Create(path);
        mystream.Close();        //保存所有修改-到指定文件中:注意编码语言的选择
        XmlTextWriter mytw = new XmlTextWriter(path,Encoding.Default);
        mydoc.Save(mytw);
        mytw.Close();
    }
真崩溃,从来没整过这东西,红色的部分没出现过,不会改,怎么人家都这么写(都是copy一个人的?)

解决方案 »

  1.   

      //新文件名
     path = path + @"\" + xmlfilename + "file.xml";
      

  2.   

     //新文件名
     path = path + @"\" + xmlfilename + "file.xml";
      

  3.   

    //新文件名
     path = path + @"\" + xmlfilename + "file.xml"; 
     
      

  4.   

    xmlfilename 根本就没定义,代码是我copy别人的,应该怎么改?
    我把xmlfilename改成filename下面的 FileStream mystream =File.Create(path);又出问题了。
    我没系统学过xml不懂
      

  5.   

    这只不过是给文件起个名字(的前半部分),这样好了:
    string xmlfilename = "my01";
      

  6.   

    path = path + @"\" + xmlfilename + "file.xml";  
    能解释一下path具体代表什么吗?(这个路径是怎样一种字符串)
    真的非常感谢。
      

  7.   

    就是很普通的路径啊,它和传进来的参数filename位于同一个目录程序找到filename的最后一个斜杠\,截取前面部分,再补上一个斜杠,再加上你自己起的一个文件名。可以设断点调试,看到path的实际路径是什么