我在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中获得所需的结果。
答案 0 :(得分:2)
您是否使用转义序列进行了测试; (%3B)?
Response.AddHeader("Content-Disposition", "attachment; filename=\"file%3Bfile%3B.txt\"");
答案 1 :(得分:-1)
检查IE的条件并使用URLEncoder.encode。它会起作用。
例如:
if (isIE) {
fileName = URLEncoder.encode(fileName, "UTF-8");
}