解决不同浏览器下载excel文件中文名称乱码问题

时间:2024-02-15 17:59:11

楼主多次测试发现,现在的三大主流浏览器(IE,Firefox,Chrome)。

IE浏览器对文件格式审查最严格,在从网页导出Excel的时候,需要对文件名称指定编码类型(UTF-8)

HttpUtility.UrlEncode(strFileName, System.Text.Encoding.UTF8)

  

而Firefox则不能指定编码类型,Chrome浏览器则既可以指定编码类型,也可以不指定编码类型

具体如下

             if (curContext.Request.UserAgent.ToLower().IndexOf("firefox", System.StringComparison.Ordinal) > 0)
             {
                 curContext.Response.AppendHeader("Content-Disposition", "attachment;filename=" + strFileName);
             }
             else
             {
                 curContext.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(strFileName, System.Text.Encoding.UTF8));
             }