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

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

將不確定變成確定~Uri文本文件不用瀏覽器自動(dòng)打開(kāi),而是下載到本地

2019-11-17 01:41:49
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

將不確定變成確定~Uri文本文件不用瀏覽器自動(dòng)打開(kāi),而是下載到本地

回到目錄

這個(gè)標(biāo)題有點(diǎn)長(zhǎng),簡(jiǎn)單來(lái)說(shuō)就是,對(duì)于一個(gè)文件下載來(lái)說(shuō),是否可以提示用戶,讓它去保存,而不是將它在瀏覽器中打開(kāi),在瀏覽器中打開(kāi)有個(gè)致命問(wèn)題,那就是,如果你的頁(yè)面編碼和文件的編碼不一致時(shí),打開(kāi)的就是亂碼,本文事實(shí)上主要解決的就是這個(gè)問(wèn)題。

上面的URI格式的文件直接使用瀏覽器打開(kāi),由于文件編碼是GB2312而網(wǎng)頁(yè)編碼是UTF-8,所以,頁(yè)面上的文字就變成了亂碼。

知道了產(chǎn)生問(wèn)題的根源之后,我們?cè)賮?lái)解決它,首先,我們沒(méi)法去控制URI上的文件編碼,所以,我們只能把它讀到本地(WWW服務(wù)器),然后再進(jìn)行二次組織,并返回到客戶端(自己的瀏覽器),對(duì)于URI的文件來(lái)說(shuō),我們不能直接返回,必須把它讀成流之后,再返回,其實(shí),.net為我們已經(jīng)封裝的很簡(jiǎn)便了,下面是實(shí)現(xiàn)的代碼,大家看一下:

       /// <summary>        /// 下載文件,同步支持本地和URI的文件        /// </summary>        /// <param name="path"></param>        /// <returns></returns>        public ActionResult DownLoad(string path)        {            if (path.IndexOf("http://") < 0)            {                string localPath = Server.MapPath("/" + path);                string contentType = MimeMapping.GetMimeMapping(localPath);                return File(localPath, contentType, "下載文件");            }            else            {                HttpWebRequest request = (HttpWebRequest)System.Net.WebRequest.Create(path);                HttpWebResponse response = (HttpWebResponse)request.GetResponse();                Stream stream = response.GetResponseStream();                var contentType = response.ContentType;//獲得文件的總大小                return File(stream, contentType, "下載文件");            }        }

下載是視頻截圖:

回到目錄


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 博湖县| 赣州市| 章丘市| 吴忠市| 郯城县| 自贡市| 格尔木市| 金塔县| 文昌市| 仙游县| 平山县| 信宜市| 周至县| 五寨县| 新闻| 海城市| 河源市| 福安市| 常宁市| 安国市| 福建省| 柘荣县| 铜山县| 通榆县| 高邑县| 彭山县| 阳原县| 壤塘县| 宜都市| 天镇县| 平江县| 通辽市| 十堰市| 田东县| 百色市| 绥芬河市| 育儿| 齐齐哈尔市| 宝应县| 四川省| 定州市|