服务器之家

服务器之家 > 正文

在FireFox/IE下Response中文文件名乱码问题解决方案

时间:2019-10-23 13:34     来源/作者:asp.net技术网

发现很多园子里的人在处理Response下载文件名是使用这个方法 
Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(fileInfo.Name, System.Text.Encoding.UTF8)); 
但这个只是针对没有空格和IE的情况下使用。 

如果想在FireFox下输出没有编码的文件,并且IE下输出的文件名中空格不为+号,就要多一次判断了。 

复制代码代码如下:


if (Request.UserAgent.ToLower().IndexOf("msie") > -1) 

downloadfilename = HttpUtility.UrlPathEncode(downloadfilename); 

if (Request.UserAgent.ToLower().IndexOf("firefox") > -1) 

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

else 

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

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
返回顶部