ASP.NET 下载文件的中文文件名乱码的解决方法? 下载文件有空格下载不正常显示解决方法?

问题
ASP.NET 下载文件的中文文件名乱码的解决方法? 下载文件有空格下载不正常显示解决方法?

解决
 ASP.NET中活动脚本页中如果下载附加中有中文文件名会乱码,是编码问题,需要编码文件名即可解决。如果有空格的话,需要在文件名用绰号包括。

比如修改前的代码:

Response.AddHeader("Content-Disposition", "attachment;filename=" +file.Name);

修改后正确代码:

// 其实可以不需要上下引号,因为编码后空格会解释成+号
Response.AddHeader("Content-Disposition", "attachment;filename=\"" + Server.UrlEncode(file.Name)+"\"");