admin管理员组

文章数量:1530056

如果网站上的一些图片以及word、pdf、txt等浏览器能够解析的文件,当你点击的时候会直接在浏览器中打开。(当然也可以把这些文件下载下来,具体操作就是下面的介绍)

但是如果是视频等内容,浏览器无法进行解析,这个时候就会提示用户进行下载、保存操作。

下面用具体的代码来演示

首先,在html页面中添加以下两个标签:

        <a href="test.txt">下载文件1</a>  
        <a href="Download.ashx">下载文件2</a>  

上面的两个文件,test.txt是普通的文本文件,文件2是地图数据文件(浏览器无法解析)。

其次,添加一个一般处理程序来对下载请求进行处理,这个时候最主要的操作时在相应头部添加内容。

//context.Response.ContentType = "text/plain";
            //context.Response.Write("Hello World");

            string encodeFileName = HttpUtility.UrlEncode("test.000"); 
            context.Response.AddHeader("Content-Disposition", string.Format("attachment;filename=\"{0}\"", encodeFileName));

            context.Response.WriteFile("test.000");

最后,我们来对上面的代码进行测试:


点击下载文件1


直接在浏览器中显示出文本内容。

点击下载文件2:


会使用浏览器下载下来该文件。

当然,如果在html页面中直接添加下面两个<a>标签也能实现效果

        <a href="test.txt">下载文件1</a>  
        <a href="test.000">下载文件1</a>
上面只是演示了文件的下载,关于其他的下载就请大家自己动手尝试了。

本文标签: 浏览器文件ASPNET