1. 程式人生 > >asp.net 瀏覽器檔案下載

asp.net 瀏覽器檔案下載

如果網站上的一些圖片以及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>
上面只是演示了檔案的下載,關於其他的下載就請大家自己動手嘗試了。