国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

Asp.net直接保存文件到客戶端

2024-07-10 13:13:00
字體:
供稿:網(wǎng)友
通常的文件下載是用跳出窗口實(shí)現(xiàn)的,但是有個(gè)問題,就是會(huì)被廣告攔截軟件直接攔截掉,另我非常的頭痛,于是尋找更好的解決方法.看了用response.binarywrite寫文件流一文之后覺得確實(shí)可以如此。
    如下代碼實(shí)現(xiàn)了此功能,解決了文件格式問題(就是只將流輸出,但無法正確識(shí)別文件格式),并且從注冊(cè)表讀取文件的contenttype

1 /**//// <summary>
2 /// 下載文件
3 /// </summary>
4 /// <param name="filename">文件物理地址</param>
5 protected void downloadfile(string filename)
6 {
7
8 string savefilename = "test.xls";
9 int intstart = filename.lastindexof("http://")+1;
10 savefilename = filename.substring(intstart,filename.length-intstart);
11
12 system.io.fileinfo fi=new system.io.fileinfo(filename);
13 string fileextname=fi.extension;
14 string default_content_type = "application/unknown";
15 registrykey regkey,fileextkey;
16 string filecontenttype;
17 try
18 {
19 regkey=registry.classesroot;
20 fileextkey=regkey.opensubkey(fileextname);
21 filecontenttype=fileextkey.getvalue("content type",default_content_type).tostring();
22 }
23 catch
24 {
25 filecontenttype=default_content_type;
26 }
27
28
29 response.clear();
30 response.charset = "utf-8";
31 response.buffer= true;
32 this.enableviewstate = false;
33 response.contentencoding = system.text.encoding.utf8;
34
35 response.appendheader("content-disposition","attachment;filename=" + savefilename);
36 response.contenttype=filecontenttype;
37
38 response.writefile(filename);
39 response.flush();
40 response.close();
41
42 response.end();
43 }

效果圖如下:

 

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 宜宾县| 鲁山县| 昭平县| 项城市| 老河口市| 万宁市| 蒙自县| 都江堰市| 红原县| 吉安县| 连平县| 大港区| 三明市| 江达县| 玛多县| 分宜县| 若羌县| 南华县| 木兰县| 沧州市| 墨江| 华容县| 铜陵市| 繁峙县| 增城市| 体育| 襄樊市| 惠水县| 黔南| 玉屏| 游戏| 大英县| 大邑县| 砚山县| 富顺县| 镇沅| 罗源县| 苍溪县| 万源市| 雷山县| 临夏市|