现有字符串strings s="<?xml version="1.0" encoding="utf-8"?><手术><手术申请预约信息><返回信息><PatientNo></PatientNo><手术流水号>20100819140705M899</手术流水号> </返回信息></手术申请预约信息></手术>"如何把他保存为xml文件?

解决方案 »

  1.   


    strings s="<?xml version="1.0" encoding="utf-8"?><手术><手术申请预约信息><返回信息><PatientNo></PatientNo><手术流水号>20100819140705M899</手术流水号> </返回信息></手术申请预约信息></手术>"
    XmlDocument doc = new XmlDocument();
    doc.LoadXml("s")
    doc.Save(fileName)
      

  2.   

    FileStream fs = new FileStream("E:\\1\\" + DateTime.Now.ToString("yyyy-MM-dd") + ".xml", FileMode.Append);
                    StreamWriter streamWriter = new StreamWriter(fs);
                    streamWriter.BaseStream.Seek(0, SeekOrigin.End);
                    streamWriter.WriteLine(s);
                    streamWriter.Flush();
                    streamWriter.Close();
    试试看
      

  3.   

    LZ不会连输出文本文件都不会吧?
    StreamWriter.Write
      

  4.   

    或者是用File.WriteAllText 方法
      

  5.   

    用Stream来操作文件实在太麻烦,不适合初学者,所以微软在.net 2.0中增加了些简便使用的API
      

  6.   

    StreamWriter streamWriter = new StreamWriter(path);
    streamWriter.WriteLine(s);
    streamWriter.Close();试试看
      

  7.   

    你是要只在控件打开吗?
    就像生成文本文件一样
             /*string filename = Environment.GetFolderPath(Environment.SpecialFolder.Personal) + "\\duanxinwenjian" + ".html";
                FileStream fs = new FileStream(@filename, FileMode.OpenOrCreate, FileAccess.Write);
                StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.GetEncoding("GB2312"));
                sw.Flush();
                sw.BaseStream.Seek(0, SeekOrigin.Begin);            sw.WriteLine("文本");
                或sw.Write("文本");
                 sw.Flush();
                sw.Close();
                
                webBrowser1.Url = new System.Uri(filename);*/
             //   webBrowser1.Navigate("about:blank");
      

  8.   


    strings str=@"<?xml version="1.0" encoding="utf-8"?><手术><手术申请预约信息><返回信息><PatientNo></PatientNo><手术流水号>20100819140705M899</手术流水号> </返回信息></手术申请预约信息></手术>";
    StreamWriter sw = null;
            try
            {
                sw = new StreamWriter(path + "\\" + xmlFileName + ".xml", false, System.Text.Encoding.GetEncoding("gb2312"));  //输出文件路径
                sw.Write(str); //输出
                sw.Flush();
            }
            catch (Exception ex)
            {
                HttpContext.Current.Response.Write(ex.Message);
                HttpContext.Current.Response.End();
            }
            finally
            {
                sw.Close();
            }
      

  9.   

    发错了
             string filename = Environment.GetFolderPath(Environment.SpecialFolder.Personal) + "\\duanxinwenjian" + ".html";
                FileStream fs = new FileStream(@filename, FileMode.OpenOrCreate, FileAccess.Write);
                StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.GetEncoding("GB2312"));
                sw.Flush();
                sw.BaseStream.Seek(0, SeekOrigin.Begin);            sw.WriteLine("文本");
                或sw.Write("文本");
                 sw.Flush();
                sw.Close();
                
                webBrowser1.Url = new System.Uri(filename);
      

  10.   

    用XmlDocument,把它解析为对象,纯属脱裤子放屁,多此一举
      

  11.   

    XmlDocument xmldoc = new XmlDocument();
    xmldoc.Load(new System.IO.MemoryStream(System.Text.Encoding.GetEncoding("GB2312").GetBytes("")));
      

  12.   

    string xml = @"<?xml version=""1.0""?>";
    XmlDocument doc= new XmlDocument();
    doc.LoadXml(xml);
    doc.Save("c:\\a.xml");
      

  13.   

    不见得,最起码它能验证这个xml结构是否有没有异常,如果把一个错误格式的xml保存成xml文件,你觉得合适吗?
      

  14.   


    byte[] buffer = Encoding.UTF8.GetBytes(str);
    XmlDocument xml = new XmlDocument();
                try
                {
                    xml.Load(new MemoryStream(buffer));                Debug.WriteLine("XML加载完毕");
                }
                catch (Exception ex)
                {
                    Debug.WriteLine(ex.Message);
                }
      

  15.   


    你不要偷换概念,我承认可以用一行搞定,更简单方便
    但是现在讨论的问题是 用Stream来操作文件是否太麻烦的问题
    三行就麻烦不适合初学者了?
      

  16.   

    不好意思,我认为FileStream StreamWriter用于基本的IO操作
    是初学者需要掌握的
    这些掌握以后,并不耽误在适当的时候使用你说的简便的API
      

  17.   

    我的本意是其实是想纠正下 3楼的关于StreamWriter不恰当的用法
    写文本文件直接用StreamWriter就可以了,没必要包装个FileStream,
    Seek没必要,在文件尾追加,只要在构造函数传入append参数为true即可
    Flush也是多此一举,因为紧接着执行的Close会做Flush所做的工作的这些很基础、很常用的东西,最好能熟练掌握
    没事可以多看看MSDN
      

  18.   

    既然是保存的“XML”文件,就应该保证XML的完整性,如果是保存的文本文件那随便
    楼主的问题“如何把string转换成xml”,如果直接保存,哪来的转换?
    逻辑思维有问题?或许