asp.net response.ContentType 下载文件的四种方法「建议收藏」

asp.net response.ContentType 下载文件的四种方法「建议收藏」原址:http://www.cnblogs.com/xtgyiq/archive/2009/07/06/1517415.htmlprotectedvoidButton1_Click(objectsender,EventArgse)   { 1 protected void Button1_Click(object sender, Even

大家好,又见面了,我是你们的朋友全栈君。

原址:http://www.cnblogs.com/xtgyiq/archive/2009/07/06/1517415.html

protected void Button1_Click(object sender, EventArgs e)
    {

asp.net response.ContentType 下载文件的四种方法「建议收藏」

 1asp.net response.ContentType 下载文件的四种方法「建议收藏」 protected void Button1_Click(object sender, EventArgs e)
 2asp.net response.ContentType 下载文件的四种方法「建议收藏」    {

 3asp.net response.ContentType 下载文件的四种方法「建议收藏」        //TransmitFile实现下载
 4asp.net response.ContentType 下载文件的四种方法「建议收藏」
 5asp.net response.ContentType 下载文件的四种方法「建议收藏」        /*
 6asp.net response.ContentType 下载文件的四种方法「建议收藏」         微软为Response对象提供了一个新的方法TransmitFile来解决使用Response.BinaryWrite
 7asp.net response.ContentType 下载文件的四种方法「建议收藏」         下载超过400mb的文件时导致Aspnet_wp.exe进程回收而无法成功下载的问题。
 8asp.net response.ContentType 下载文件的四种方法「建议收藏」         代码如下:
 9asp.net response.ContentType 下载文件的四种方法「建议收藏」        */

10asp.net response.ContentType 下载文件的四种方法「建议收藏」
11asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.ContentType = application/x-zip-compressed;
12asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.AddHeader(Content-Dispositionattachment;filename=keji.rar);
13asp.net response.ContentType 下载文件的四种方法「建议收藏」        string filename = Server.MapPath(keji.rar);
14asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.TransmitFile(filename);
15asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.Write(<script language=\javascript\ type=\text/javascript\>);
16asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.Write(alert(\下载成功\););
17asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.Write(window.location.href=\C_SC.aspx\;);
18asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.Write(</script>);
19asp.net response.ContentType 下载文件的四种方法「建议收藏」
20asp.net response.ContentType 下载文件的四种方法「建议收藏」    }

21asp.net response.ContentType 下载文件的四种方法「建议收藏」    protected void Button2_Click(object sender, EventArgs e)
22asp.net response.ContentType 下载文件的四种方法「建议收藏」    {

23asp.net response.ContentType 下载文件的四种方法「建议收藏」
24asp.net response.ContentType 下载文件的四种方法「建议收藏」        //WriteFile实现下载
25asp.net response.ContentType 下载文件的四种方法「建议收藏」        string fileName = ceshi.rar;//客户端保存的文件名
26asp.net response.ContentType 下载文件的四种方法「建议收藏」        string filePath = Server.MapPath(keji.rar);//路径
27asp.net response.ContentType 下载文件的四种方法「建议收藏」
28asp.net response.ContentType 下载文件的四种方法「建议收藏」        FileInfo fileInfo = new FileInfo(filePath);
29asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.Clear();
30asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.ClearContent();
31asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.ClearHeaders();
32asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.AddHeader(Content-Dispositionattachment;filename= + fileName);
33asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.AddHeader(Content-Length, fileInfo.Length.ToString());
34asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.AddHeader(Content-Transfer-Encodingbinary);
35asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.ContentType = application/octet-stream;
36asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.ContentEncoding = System.Text.Encoding.GetEncoding(gb2312);
37asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.WriteFile(fileInfo.FullName);
38asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.Flush();
39asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.End();
40asp.net response.ContentType 下载文件的四种方法「建议收藏」
41asp.net response.ContentType 下载文件的四种方法「建议收藏」    }

42asp.net response.ContentType 下载文件的四种方法「建议收藏」    protected void Button3_Click(object sender, EventArgs e)
43asp.net response.ContentType 下载文件的四种方法「建议收藏」    {

44asp.net response.ContentType 下载文件的四种方法「建议收藏」        //WriteFile分块下载
45asp.net response.ContentType 下载文件的四种方法「建议收藏」
46asp.net response.ContentType 下载文件的四种方法「建议收藏」        string fileName = GhostXP.iso;//客户端保存的文件名
47asp.net response.ContentType 下载文件的四种方法「建议收藏」        string filePath = Server.MapPath(GhostXP7.7.iso);//路径
48asp.net response.ContentType 下载文件的四种方法「建议收藏」
49asp.net response.ContentType 下载文件的四种方法「建议收藏」         System.IO.FileInfo fileInfo = new System.IO.FileInfo(filePath);
50asp.net response.ContentType 下载文件的四种方法「建议收藏」
51asp.net response.ContentType 下载文件的四种方法「建议收藏」        if (fileInfo.Exists == true)
52asp.net response.ContentType 下载文件的四种方法「建议收藏」         {

53asp.net response.ContentType 下载文件的四种方法「建议收藏」            const long ChunkSize = 409600;//100K 每次读取文件,只读取100K,这样可以缓解服务器的压力
54asp.net response.ContentType 下载文件的四种方法「建议收藏」            byte[] buffer = new byte[ChunkSize];
55asp.net response.ContentType 下载文件的四种方法「建议收藏」
56asp.net response.ContentType 下载文件的四种方法「建议收藏」             Response.Clear();
57asp.net response.ContentType 下载文件的四种方法「建议收藏」             System.IO.FileStream iStream = System.IO.File.OpenRead(filePath);
58asp.net response.ContentType 下载文件的四种方法「建议收藏」            long dataLengthToRead = iStream.Length;//获取下载的文件总大小
59asp.net response.ContentType 下载文件的四种方法「建议收藏」             Response.ContentType = application/octet-stream;
60asp.net response.ContentType 下载文件的四种方法「建议收藏」             Response.AddHeader(Content-Dispositionattachment; filename= + HttpUtility.UrlEncode(fileName));
61asp.net response.ContentType 下载文件的四种方法「建议收藏」            while (dataLengthToRead > 0 && Response.IsClientConnected)
62asp.net response.ContentType 下载文件的四种方法「建议收藏」             {

63asp.net response.ContentType 下载文件的四种方法「建议收藏」                int lengthRead = iStream.Read(buffer, 0, Convert.ToInt32(ChunkSize));//读取的大小
64asp.net response.ContentType 下载文件的四种方法「建议收藏」                 Response.OutputStream.Write(buffer, 0, lengthRead);
65asp.net response.ContentType 下载文件的四种方法「建议收藏」                 Response.Flush();
66asp.net response.ContentType 下载文件的四种方法「建议收藏」                 dataLengthToRead = dataLengthToRead  lengthRead;
67asp.net response.ContentType 下载文件的四种方法「建议收藏」             }

68asp.net response.ContentType 下载文件的四种方法「建议收藏」             Response.Close();
69asp.net response.ContentType 下载文件的四种方法「建议收藏」         }

70asp.net response.ContentType 下载文件的四种方法「建议收藏」     }

71asp.net response.ContentType 下载文件的四种方法「建议收藏」
72asp.net response.ContentType 下载文件的四种方法「建议收藏」    //字符流方式下载文件
73asp.net response.ContentType 下载文件的四种方法「建议收藏」    protected void Button4_Click(object sender, EventArgs e)
74asp.net response.ContentType 下载文件的四种方法「建议收藏」    {

75asp.net response.ContentType 下载文件的四种方法「建议收藏」        string fileName = ce2.rar;//客户端保存的文件名
76asp.net response.ContentType 下载文件的四种方法「建议收藏」        string filePath = Server.MapPath(keji.rar);//路径
77asp.net response.ContentType 下载文件的四种方法「建议收藏」
78asp.net response.ContentType 下载文件的四种方法「建议收藏」        //以字符流的形式下载文件
79asp.net response.ContentType 下载文件的四种方法「建议收藏」        FileStream fs = new FileStream(filePath, FileMode.Open);
80asp.net response.ContentType 下载文件的四种方法「建议收藏」        byte[] bytes = new byte[(int)fs.Length];
81asp.net response.ContentType 下载文件的四种方法「建议收藏」        fs.Read(bytes, 0, bytes.Length);
82asp.net response.ContentType 下载文件的四种方法「建议收藏」        fs.Close();
83asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.ContentType = application/octet-stream;
84asp.net response.ContentType 下载文件的四种方法「建议收藏」        //通知浏览器下载文件而不是打开
85asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.AddHeader(Content-Dispositionattachment;   filename= + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
86asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.BinaryWrite(bytes);
87asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.Flush();
88asp.net response.ContentType 下载文件的四种方法「建议收藏」        Response.End();
89asp.net response.ContentType 下载文件的四种方法「建议收藏」
90asp.net response.ContentType 下载文件的四种方法「建议收藏」    }

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/161599.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号