我通过把xml文件先放到服务器的方法,能够实现文件的下载,主要方法是
string xmlPath = Server.MapPath("test.xml"); objXml.XmlSave(xmlPath);
这种方法是将xml文件放到服务器上,然后是通过流的方式进行下载
byte[] byfs = FileToStream(xmlPath); Response.Charset = "GB2312"; Response.AddHeader("Content-Disposition", "attachment; filename=\"" + HttpUtility.UrlEncode(PlanName, System.Text.Encoding.UTF8) + "\""); Response.AddHeader("Content-Length", byfs.Length.ToString()); Response.BufferOutput = true; Response.ContentEncoding = System.Text.Encoding.Default; Response.ContentType = "application/octet-stream"; Response.BinaryWrite(byfs); Response.Flush(); Response.Close();
现在我不希望通过这种方式下载,我想xml直接生成发送到本地,不进行服务器的写入,求高手指教!
不知道 objXml 是什么type, 有没有XmlSave 保存到stream 这样的方法。
有的话 直接写到输出流里 就可以了。 不需要写入文件。
你说的很对,我最后就是用这个方法解决的,把分给你!
Response.ContentType = "text/xml";
Response.Write("<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n " + xml内容);
不还意思,你好像没有理解我的问题,不过还是谢谢你的回答!