asp.net 文件下载(txt,rar,pdf,word,excel,ppt)

aspx 文件下载说起来一点都不难,但是在做的过程中还是遇到了一些小小的问题,就是因为这些小小的问题,导致解决起来实在是太难了,其中一个就是Response.End();导致下载文件出现线程终止的情况...

正确的下载文件的方法

 1              //获取对应文件的内容,这里主要取comm.FileURL的文件保存动态路径,也就是20150825/5e7af276b7754363a1e78b496e1d1603文本文档.txt
 2             CommNoticeModel comm = CommNoticeBLL.GetInstance().GetCommNoticeModel(int.Parse(Request.QueryString["ID"]));
 3             //这里主要组成文件的相对路径,这里得到的就是  ~/FileBox/20150825/5e7af276b7754363a1e78b496e1d1603文本文档.txt
 4             string path = CommonUtilModel.GetFileVirtualPath() + comm.FileURL;
 5             try
 6             {
 7
 8                 FileInfo fileInfo = new FileInfo(Server.MapPath(path));
 9                 Response.Clear();
10                 Response.ClearContent();
11                 Response.ClearHeaders();
12                 Response.AddHeader("Content-Disposition", "attachment;filename=" + fileInfo.Name);
13                 Response.AddHeader("Content-Length", fileInfo.Length.ToString());
14                 Response.AddHeader("Content-Transfer-Encoding", "binary");
15                 // 告诉浏览器传递给用用户的是一个非txt,rar等不出现在IEEM上的一个文件,不需要在浏览器页面打开,需要直接下载
16                 Response.ContentType = "application/octet-stream";
17                 Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
18                 Response.WriteFile(fileInfo.FullName);
19                 Response.Flush();
20                 Response.End();
21             }
22
23             catch (Exception ex)
24             {
25                 Response.Clear();
26                 Response.ClearContent();
27                 Response.ClearHeaders();
28                 Response.Write(ex.Message + "<br/>" + path);
29                 Response.End();
30             }

转载请注明出处:http://www.cnblogs.com/abc1069/

时间: 2024-10-05 18:10:58

asp.net 文件下载(txt,rar,pdf,word,excel,ppt)的相关文章

PDF/WORD/EXCEL 图片预览

一.PDF/WORD/EXCEL 转 XPS 转 第一页内容 转 图片 WORD.EXCEL转XPS (Office2010) public bool WordToXPS(string sourcePath, string targetPath) { bool result = false; Microsoft.Office.Interop.Word.WdExportFormat exportFormat = Microsoft.Office.Interop.Word.WdExportForma

Atitit.office&#160;word&#160;&#160;excel&#160;&#160;ppt&#160;pdf&#160;的web在线预览方案与html转换方案&#160;attilax&#160;总结

Atitit.office word  excel  ppt pdf 的web在线预览方案与html转换方案 attilax 总结 1. office word  excel pdf 的web预览要求1 1.1. 显示效果要好1 1.2. 可以自定义显示界面1 1.3. 不需要控件,兼容性好1 1.4. 支持编辑操作1 2. 纯html预览解决之道(自由的格式)1 3. 转换swf flash方案2 4. 转换pdf方式..更多的浏览器已经直接支持pdf格式查看2 5. 控件方式2 6. Hyb

java 如果将 word,excel,ppt如何转pdf --openoffice (1)

承上启下,可折叠 上一篇说的是:服务器是windows server时,用jacob将msoffice(指的是word,excel,ppt)转换成pdf. 若被部署项目的服务器是centOS等linux server时,就不能用之前的上述说的那种方式了. 在上一篇说到openoffice将msoffice转成pdf的时候会存在排版错位的问题,或者有的内容消失了,这是因为msoffice中的一些特有格式,openoffice不识别解析不了导致的.当然大部分的普通msoffice文档转换成pdf时,

Aspose是一个很强大的控件,可以用来操作word,excel,ppt等文件

Aspose是一个很强大的控件,可以用来操作word,excel,ppt等文件,用这个控件来导入.导出数据非常方便.其中Aspose.Cells就是用来操作Excel的,功能有很多.我所用的是最基本的功能,读取Excel的数据并导入到Dataset或数据库中.读取Excel表格数据的代码如下: 首先要引入命名空间:using Aspose.Cells; Workbook workbook = new Workbook(); workbook.Open("C:\\test.xlsx");

word,excel,ppt,txt转换为 PDF

/// <summary> /// 将word文档转换成PDF格式 /// </summary> /// <param name="sourcePath"></param> /// <param name="targetPath"></param> /// <returns></returns> public static bool ConvertWord2Pdf(str

php pdf word excel 操作方法

很早的时候,用php生成execl都是件麻烦的事,我一般都会用csv来替代,现在这类工具就很多了,并且比较成熟了.不光有excel的,word,pdf. 1,php excelreader操作excel的php类,生成,读取excel等.功能很强大. 下载地址:http://sourceforge.net/projects/phpexcelreader/ 解压后,里面有很多例子,调用方法简单. 2,phpdocx操作word的php类 下载地址:http://www.phpdocx.com/ 在

lucent检索技术之创建索引:使用POI读取txt/word/excel/ppt/pdf内容

在使用lucent检索文档时,必须先为各文档创建索引.索引的创建即读出文档信息(如文档名称.上传时间.文档内容等),然后再经过分词建索引写入到索引文件里.这里主要是总结下读取各类文档内容这一步. 一.之前做过一个小工具也涉及到读取word和excel内容,采用的是com组件的方式来读取.即导入COM库,引入命名空间(using Microsoft.Office.Interop.Word;using Microsoft.Office.Interop.Excel;),然后读代码如下: 读取word

关于在线预览word,excel,ppt,pdf的需求处理方法。

参考文档:http://www.cnblogs.com/wolf-sun/p/3574278.html 我选用的方案:先用office com组件生成pdf,然后使用pdf.js在线预览pdf文档.在自己写demo的过程下遇到如下两个问题,在此记录一下,希望能帮助到遇到同类问题的兄弟姐妹们.   1.在服务器上安装Office Plus 2010后,使用其com组件生成pdf时出现权限错误 System.UnauthorizedAccessException: Retrieving the CO

PHP 实现 word/excel/ppt 转换为 PDF

前段时间负责公司内部文件平台的设计,其中有一个需求是要能够在线浏览用户上传的 office 文件. 我的思路是先将 office 转换成 PDF,再通过 pdf.js 插件解析 PDF 文件,使其能在任何浏览器下查看. 可以通过 PHP 的 COM 组件,调用其它能够处理 office 文件的应用程序,利用提供的接口来转换 PDF 文件. OpenOffice OpenOffice 是一套开源跨平台的办公软件,由许多自由软件人士共同来维持,让大家能在 Microsoft Office 之外,还能