博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

MVC C# 直接导出txt文件

Posted on 2015-07-09 10:55  Leon zhang  阅读(2624)  评论(0编辑  收藏  举报

用asp.net根据数据内容自动生成一个txt文本文件并提供用户下载,此方法文件不保存在服务器上,直接提供给用户下载,到网上搜了一下,都是用的Response.BinaryWrite(),用了几下,发现在IE下有问题,看页面源代码数据是出来了的,Firefox下倒是弹出一个框来下载了,不过不是txt,而是aspx,里面的内容是从数据库里面取出来的数据。

其实在ASP.NET中直接用Write()就可以了,代码如下 (mvc文件):

Response.Clear();
Response.Buffer = false;
Response.ContentType = "application/octet-stream";
Response.AppendHeader("content-disposition", "attachment;filename=" + filename+ ".txt;"); 
Response.Write("1234|ABCDE\r\n");

// 读取数据库,循环
for(i=0;i<100;i++)

Response.Write("1234|ABCDE\r\n");

Response.Flush();
Response.End();

return new EmptyResult();

在IE和Firefox调试下皆通过