国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 互助| 湘阴县| 黔西| 石屏县| 莒南县| 泽普县| 磴口县| 当雄县| 商水县| 荥阳市| 泸水县| 玛曲县| 大渡口区| 高雄县| 福州市| 邵武市| 民勤县| 瓮安县| 江安县| 德庆县| 澜沧| 天全县| 阿图什市| 新河县| 武鸣县| 太谷县| 蚌埠市| 正宁县| 称多县| 万全县| 保定市| 印江| 贞丰县| 凤山县| 华池县| 济南市| 东方市| 泸州市| 谷城县| 尤溪县| 临湘市|