最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ASP.NET 在下載文件時(shí)對(duì)其重命名的思路及實(shí)現(xiàn)方法

 更新時(shí)間:2013年06月05日 11:06:05   作者:  
ASP.NET 在下載文件時(shí)對(duì)其重命名的思路及實(shí)現(xiàn)方法,需要的朋友可以參考一下
有些時(shí)候?yàn)榱吮WC文件再上傳時(shí)不會(huì)覆蓋掉之前上傳的文件,同時(shí)由于上傳的目標(biāo)目錄里的文件可能很多,這個(gè)時(shí)候一個(gè)一個(gè)查是不太好的事情,所以這里可以自動(dòng)生成GUID使文件名重命名成GUID_原來(lái)的名稱(chēng).擴(kuò)展名。但是在下載的時(shí)候最好可能保證恢復(fù)到原來(lái)的名稱(chēng)。這個(gè)時(shí)候聽(tīng)傷神的。搜了一下相關(guān)資料后得知可使用response來(lái)解決。具體代碼如下。

[csharp] 
復(fù)制代碼 代碼如下:

<pre name="code" class="csharp">string path = Server.MapPath("aa\\ahaakladahsasdas_bb.zip"); 
            string newfileName = ""; 
            if (File.Exists(path)) 
            { 
                FileInfo fi = new FileInfo(path); 
                Response.Clear();//Clear 方法刪除緩沖區(qū)中的所有 HTML 輸出。但 Clear 方法只刪除響應(yīng)正文 
                //而不刪除響應(yīng)標(biāo)題??梢杂迷摲椒ㄌ幚礤e(cuò)誤情況。 
                Response.ClearHeaders(); 
                Response.Buffer = false;//這句話的意思就是指明輸出頁(yè)面是否被緩沖,當(dāng)屬性值為T(mén)rue時(shí), 
                //服務(wù)器將不會(huì)向客戶(hù)端發(fā)送任何信息,直到所有程序執(zhí)行完或者遇到  
                //Response.Flush或Response.End語(yǔ)句,才會(huì)釋放緩沖區(qū)的信息。 
                string filename = Path.GetFileName(path); 
                newfileName = newfileName + filename.Substring(filename.LastIndexOf(".")); 
                Response.Clear(); 
                Response.ClearHeaders(); 
                Response.Buffer = false; 

                newfileName = HttpUtility.UrlEncode(newfileName);// 這一步彈出下載保存的對(duì)話框,出現(xiàn)文件名亂碼,但變量中的文件名是正常的。   
                Response.AppendHeader("Content-Disposition", "attachment;filename=" + newfileName);//為用戶(hù)保存文件是顯示的名稱(chēng) 
                //告訴客戶(hù)端這個(gè)響應(yīng)內(nèi)容的類(lèi)型為attachment 你是通過(guò)Response.AppendHeader("content-type", "attachment"); 申明的。 

                Response.AppendHeader("Content-Length", fi.Length.ToString()); 
                Response.ContentType = "application/octet-stream"; 
                Response.WriteFile(newfileName);//用response來(lái)返回文件的路徑   
                Response.Flush();//清空response   
                Response.End(); 
                //Response.End(); 如果拋異常的話可使用 
                //HttpContext.Current.ApplicationInstance.CompleteRequest(); 
            } 
            else 
            { 
                Response.Write("<script langauge=javascript>alert(‘文件不存在!');</script>"); 
            }

</pre><br> 
<br> 
<pre></pre> 
<p></p> 
<pre></pre> 
<p></p> 
<pre></pre> 

相關(guān)文章

最新評(píng)論

通州市| 天台县| 渭南市| 阜康市| 土默特右旗| 吴堡县| 南郑县| 泾源县| 惠东县| 萨迦县| 桂林市| 龙游县| 怀宁县| 莲花县| 邯郸县| 新兴县| 建水县| 临清市| 巩义市| 湖口县| 阿合奇县| 土默特右旗| 鄂州市| 新郑市| 南投市| 神木县| 正镶白旗| 工布江达县| 广南县| 石楼县| 上杭县| 奇台县| 高淳县| 怀化市| 定南县| 沧州市| 监利县| 深水埗区| 颍上县| 枝江市| 夹江县|