3

IE8 でセミコロンを含むファイル名をダウンロードしようとすると問題が発生します。

Response.AddHeader("Content-Disposition", "attachment; filename=\"" + attachment.File.FileName + "\"");

attachment.File.FileName = "Test;Test;Test.txt" と仮定すると、

FF 3.5: 「Test;Test;Test.txt」という名前のファイルを保存/開くように求められます。これは望ましい結果です。

IE8: 「Test」という名前のファイルを保存/開くように求められます。

IE8 で目的の結果を得る方法を理解する必要があります。

4

2 に答える 2

2

;のエスケープシーケンスを使用してテストを行いましたか。(%3B)?

Response.AddHeader("Content-Disposition", "attachment; filename=\"file%3Bfile%3B.txt\"");
于 2009-09-28T16:39:01.223 に答える
-1

IE の条件を確認し、URLEncoder.encode を使用します。それが動作します。

例えば。: if (isIE) { fileName = URLEncoder.encode(fileName, "UTF-8"); }

于 2012-01-18T09:28:32.230 に答える