用asp.net 下载文件
来源:互联网 发布:手机股市行情软件下载 编辑:程序博客网 时间:2024/06/06 08:51
用asp下载文件,如果确定文件名,不是txt,bin...之类的文件可以直接用<a>标签下载,标签的href属性是文件的路径;
但是这种方式在IE浏览器中会出现不下载而是直接打开的问题,这是我们所不希望的;
解决方案:
设置网站的mimeMap;
一是设置IIS的配置,但是我的电脑安装好IIS之后却不能打开网站,所以这一步没有细细研究,只是知道可以这样做而已,如果以后有需要,可以自行查找教程,知道有这样的方法就好;
二是在网页后台设置mimeMap,使用Response可以设置,以下是网上的一段代码:
public void DownloadFile(string path, string name) { try { System.IO.FileInfo file = new System.IO.FileInfo(path); Response.Clear(); Response.Charset = "GB2312"; Response.ContentEncoding = System.Text.Encoding.UTF8; // 添加头信息,为"文件下载/另存为"对话框指定默认文件名 Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlEncode(name)); // 添加头信息,指定文件大小,让浏览器能够显示下载进度 Response.AddHeader("Content-Length", file.Length.ToString()); // 指定返回的是一个不能被客户端读取的流,必须被下载 Response.ContentType = "application/ms-excel"; // 把文件流发送到客户端 Response.WriteFile(file.FullName); // 停止页面的执行 Response.End(); HttpContext.Current.ApplicationInstance.CompleteRequest(); } catch (Exception ex) { Response.Write("<script>alert('系统出现以下错误://n" + ex.Message + "!//n请尽快与管理员联系.')</script>"); } }
Ps:
1、我是使用asp:Button点击事件触发后台一个函数然后调用这个下载函数的,开始使用了updatePanel包含asp:Button控件,这会导致异步执行后台事件,所以下载过程会需要其他页面,后来我是不使用updatePanel包含处理,虽然页面点击之后会刷新,但至少能下载了,呵呵。http://blog.csdn.net/scate/article/details/5341382 这里有解决方法,但这是另外创建了一个页面,不是我的需求。
2、动态添加下载链接:
for (var j = 1; j < filesInOneDir.length; j++) { var trA = document.createElement("tr"); dirANDfile = dir + "/" + filesInOneDir[j]; var ss = "ss"; var textBox = document.getElementById("fileName"); trA.innerHTML = "<td><input type='checkBox' value=" + i + "\:" + filesInOneDir[j] + "><span>" + filesInOneDir[j] + "</span></td ><td style='width:7%;right:5px'><a style='cursor:pointer' onclick='javascript:downloadFile(\"" + dirANDfile + "\")'>下载</a></td>"; tableId.appendChild(trA); }
0 0
- 用asp.net 下载文件
- 下载文件 asp.net
- ASP.NET文件下载
- asp.net 文件下载
- asp.net 下载文件
- Asp.net 下载文件
- asp.net文件下载
- Asp.net 文件下载
- ASP.NET 文件下载
- ASP.NET 下载文件
- asp.net下载文件
- Asp.Net 文件下载
- ASP.NET 文件下载
- ASP.NET下载文件
- ASP.NET下载文件
- asp.net下载文件
- ASP.NET文件下载
- asp.net下载文件
- (更新)knockout学习-1.0
- NetBeans文件被锁
- cocos2d-x 骨骼动画初步了解
- ACM 多项式乘法
- 【LeetCode】Clone_Graph
- 用asp.net 下载文件
- HIbernate介绍(配置文件、HibernateSessionFactory)
- [系统运维] 《31天成为IT服务达人》最新目录
- 删除字符串 s1 中与 s2 对应的字符的程序, 如何改?
- JAVA多线程
- 域名解析和端口映射的结合,在任何网络环境发布网站、访问内网,原理分析与实际应用
- C/C++日常学习总结(第十篇)string的实现&文件流操作
- 万华店追你炫目的瞳孔
- fsockopen读取文件