传输生成的XML文件而不保存到磁盘我有一个大型Web表单应用程序,我希望允许用户导出他们的数据,以防他们不想完成整个表格一次。然后当他们返回时,他们可以导入数据并从中断处继续。部分原因是客户的要求是不使用任何数据库。我已经到了创建一个包含所有表单数据的XML文件的地步,但我希望客户端能够下载该XML文件,而无需将应用程序保存到服务器,即使是暂时的。是否可以创建一个XML文件并将其流式传输/附加到客户端而不将其保存到磁盘?我正在使用C#Asp.net您可以编写HttpResponse:HttpResponseresponse=HttpContext.Current.Response;字符串xmlString="blah";stringfileName="ExportedForm.xml";响应.StatusCode=200;response.AddHeader("content-disposition","attachment;filename="+fileName);response.AddHeader("Content-Transfer-Encoding","binary");response.AddHeader("Content-Length",_Buffer.Length.ToString());response.ContentType="应用下载";响应.Write(xmlString);您没有提到您正在使用的服务器技术,但总的来说:在内存中创建xml文档,并将其写入响应流。将Content-Type标头更改为text/xml将Content-disposition标头更改为附件;文件名=data.xml;依恋;文件名=data.xml;一些链接:http://en.wikipedia.org/wiki/MIME#Content-Disposition看看MemoryStream。http://msdn.microsoft.com/en-us/library/system.io.memorystream.aspx您应该能够将XML存储在内存中,然后通过HTTP请求或您希望的任何方式将其流式传输到客户端。HttpResponse响应=HttpContext.Current.Response;字符串xmlString="blah";stringfileName="ExportedForm.xml";响应.StatusCode=200;response.AddHeader("content-disposition","attachment;filename="+fileName"response.AddHeader("Content-Transfer-Encoding","binary");response.AddHeader("Content-Length",_Node.Length.ToString());response.ContentType="application-download";response.Write(xmlString);但是它会将所有的页面内容保存到一个文件中。在PHP中是这样的:以上是C#学习教程:传生成XML文件不存盘分享全部内容,如果对大家有帮助有用,需要了解更多C#学习教程,希望大家多多关注—header("Content-type:text/xml");$headerText="Content-disposition:attachment;filename=file.xml";header($headerText);echo$your_XML_contents;exit;本文整理自网络,不代表立场,如涉及侵权,请点击右边联系管理员删除,如需转载请注明出处:
