码迷,mamicode.com
首页 > 其他好文 > 详细

从服务器下载文件中文名乱码解决方法

时间:2015-08-18 18:43:06      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:

 try
        {
            string excelName = Request["excelName"].ToString(); //文件路径
            string fileName = Request["fileName"].ToString(); //下载的文件名
            if(!(string.IsNullOrEmpty(excelName)|| string.IsNullOrEmpty(fileName)))
            {
                Response.Charset = "GB2312";
                Response.ContentEncoding = Encoding.GetEncoding("GB2312");
                Response.ContentType="application/vnd.ms-excel";
                //火狐浏览器不需将中文文件名进行编码格式转换
                if (Request.ServerVariables["http_user_agent"].ToLower().IndexOf("firefox") == -1)
                {
                    excelName = HttpUtility.UrlEncode(excelName, System.Text.Encoding.UTF8);
                }
                Response.AppendHeader("Content-Disposition", "attachment;filename=" +excelName);
                Response.WriteFile(fileName);
                Response.Flush();
                Response.Close();
            }
        }
        catch
        { }

 注意判断浏览器 IE需要将中文文件名编码格式转换,而firefox浏览器则不用,不然下载下来的中文文件名会乱码

从服务器下载文件中文名乱码解决方法

标签:

原文地址:http://www.cnblogs.com/wei325/p/4740011.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!