低版本ie儲存檔案時,檔名過長被截斷

2022-04-03 06:07:35 字數 1680 閱讀 4504

開始時,將檔名用utf-8編碼,通過檢視響應標頭,可以看到完整的utf-8編碼後的檔名。但是在儲存時,如果檔名過長,檔名會從前面被截斷

設定響應頭編碼為gb2312,如果直接返回utf-8編碼的檔名,低版本ie儲存檔案時,如果檔名過長,會將檔名前面部分截斷

16//

設定響應頭編碼為gb2312後檔名如果長太多,低版本ie儲存檔案時,仍會截斷

17 response.headerencoding = system.text.encoding.getencoding("

gb2312");

18 response.addheader("

content-disposition

", "

attachment; filename=\"

" + downloadfilename + "\""

);19 response.contentencoding =system.text.encoding.utf8;

20 response.contenttype = "";

21response.binarywrite(bytes.toarray());

22response.flush();

23response.end();

24return

new emptyresult();

修改後將響應標頭的編碼設定為gb2312,檔名不進行編碼

對比可以看到到,這次響應標頭中的檔名長度變短了,所以儲存時檔名未被截斷。這種方式只是相對於utf-8編碼方式來說,減少了響應標頭中的檔名長度,但是如果檔名長度更長之後,仍可能出現檔名被截斷的情況。

檔名過長無法刪除

問 我機器上被朋友建了個252字元的檔案,刪除到 站 清空 結果顯示檔案無法刪除,可是我機器上也找不到那個檔案了,用過好多方法都不行,重灌系統,格了系統盤,無用,誰有方法謝謝了找不到那個檔案了,要是能找到直接改下名字估計就可以解決,格盤無用,試過好多方法都不行.答 先把他還原了,然後進入命令列模式,...

excel匯出時檔名無法獲取

如下 info loading flag size small class btngap click download el button template export default methods this axios then res script 過程中,遇到檔名無法獲取的問題。後端已經把...

finecms 5 0 8低版本前台任意檔案上傳

前台頭像上傳的地方任意檔案上傳 publicfunctionupload 建立儲存資料夾 dir sys upload path.member this uid.dr dir delete dir is dir dir dr mkdirs dir if post tx file str replac...