`
Goro
  • 浏览: 170604 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

解决文件下载时文件名乱码在ie和firefox下面表现不一致问题

阅读更多
// 其中 Base64 类来自 org.apache.commons.codec 组件 一个40多k的jar 
public String encodeFileName(HttpServletRequest request, String fileName) throws UnsupportedEncodingException {  
    String agent = request.getHeader("USER-AGENT");  
    if (null != agent && -1 != agent.indexOf("MSIE")) {  
        return URLEncoder.encode(fileName, "UTF-8").replace("+", "%20");  
    }else if (null != agent && -1 != agent.indexOf("Mozilla")) {  
        return "=?UTF-8?B?"+(new String(Base64.encodeBase64(fileName.getBytes("UTF-8"))))+"?=";  
    } else {  
        return fileName;  
    }  
}  


使用例如下载Excel文件。

response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename=\"" + encodeFileName(request, fileName) + "\""); 
分享到:
评论

相关推荐

    彻底解决Asp.net 文件下载时文件名的中文乱码和空格异常全球性技术难题

    彻底解决Asp.net 文件下载时文件名的中文乱码和空格异常全球性技术难题 本文用 C# 代码解决了在目前四种流行浏览器中Asp.net 输出文件流时文件名的空格及中文字符乱码这两个问题。使用本文的代码,你将可以让 IE...

    C#HTML导出excel文件名火狐,IE浏览器乱码

    C#HTML导出excel时文件名,IE,火狐浏览器不兼容,乱码。故此将ExcelHelper.FileName(Request.ServerVariables["HTTP_USER_AGENT"].ToUpper(), $"文件名{DateTime.Now:_yyyyMMdd}", out filename, out encoding);

    Java下载文件时文件名乱码问题解决办法

    我最近在开发时遇到了文件另存为时文件名出现乱码,在火狐上正常的文件名,在IE中又出现乱码问题,然后好不容易在IE下调试好了文件名乱码问题,在火狐下又出现乱码,最后终于感觉这样是能解决了。具体如下:

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

    只是针对没有空格和IE的情况下使用Response.AppendHeader()如果想在FireFox下输出没有编码的文件,并且IE下输出的文件名中空格不为+号,就要多一次判断了,接下来将详细介绍下感兴趣的朋友可以了解下,或许对你有所...

    下载文件个别浏览器文件名乱码解决办法

    代码如下: if (context.Request.UserAgent.ToLower().IndexOf(“msie”, System.StringComparison.Ordinal) > -1)//... } if (context.Request.UserAgent.ToLower().IndexOf(“firefox”, System.StringComparison.

    KODExplorer 芒果云-资源管理器

    - 选中文件时,移动到屏幕可视区域(解决上下左右选中文件滚动条不一致问题) ###ver2.51 `2014/6/22` ---- ####fix bug:(bug解决和程序优化) - 登陆多次密码输入错误验证码bug解决 - 修复漏洞:创建副本加入...

    jquery ajax post提交数据乱码

    在用jquery处理html5的应用的时候,一直在firefox下测试都正常,用户用pad访问的时候说有乱码,自己试验了下果然,后发现chrome和ie内核下都是有此问题,此问题设置了页面属性为utf-8时候,只有firefox是传的charset...

    DotNetTextBox V6.0.10 商业版 下载 (已知最新)

    5)修正firefox3.0以上版本浏览控件界面显示不正确的问题! 2008/10/23 Version 5.0.8 For VS2005/2008 Updates: 1)增加了上传功能中重命名文件名的安全字符过滤! 2)修正上传功能中存在的一个安全问题!...

    科汛8.03商业版

    13、修复点评系统在firefox乱码,及无法点评 14、修复按线下充值卡充值时,选择按天数情况,充值后不会自动转为按有效期 15、修复后台用户管理列表里,当无启用会员详细字段是,无法添加和修改会员资料 16、...

    asp.net 利用NPOI导出Excel通用类的方法

    解决中文文件名保存Excel乱码问题,主要是判断火狐或者IE浏览器,然后做对应的判断处理,核心代码如下: System.Web.HttpContext.Current.Response.ContentType = application/vnd.ms-excel; //设置下载的Excel...

    科讯全功能商业版-V8.03升级补丁

    13、修复点评系统在firefox乱码,及无法点评 14、修复按线下充值卡充值时,选择按天数情况,充值后不会自动转为按有效期 15、修复后台用户管理列表里,当无启用会员详细字段是,无法添加和修改会员资料 16、修复后台...

    商用版本文本编辑器DotNetTextBoxV6.0.8Source 源码

    5)修正firefox3.0以上版本浏览控件界面显示不正确的问题! 2008/10/23 Version 5.0.8 For VS2005/2008 Updates: 1)增加了上传功能中重命名文件名的安全字符过滤! 2)修正上传功能中存在的一个安全问题!(重要更新)! ...

    web框架探讨,有兴趣的进,内附源码

    1.可以直接生成XML,JSON; 2.支持spring; 3.支持文件上传,下载(中文文件名不会乱码,测试浏览器IE,firefox); 4.学习java WEB的最佳资料。 (--@copy zjc版权所有,仅供学习--)

    淘客帝国破解版

    修复UTF8版本文章系统无法整合,乱码的问题 某些模板友情链接可能丢失的问题。 单页文档广告位不能后台设置的问题 APP超限造成的失败率太高,总是报警问题。 产品详细页因为淘宝BUG,经常取不到推广地址问题。 增加...

    建站之星v2.1最新商业破解版 带1千多套模板

    20、修正添加文章时添加子类别在火狐和谷歌浏览器下类别名为乱码 21、修正文章分类和产品分类模块调用数据不同步生效问题 22、修正数据库备份/恢复文字表达引起客户误解为整站数据备份问题,此功能仅针对数据库...

    文章管理系统

    上传图片和上传文件框加入编码指定,防止乱码出现 4.修复其他细节bug 2012年11月03日 ★更新方式:admin文件夹改成你后台目录名,然后补丁包里的所有文件覆盖进去。 1.纠正后台文章编辑时获取编辑器缩略图有时...

    最新建站之星2.1商业破解版 带1千多套模板

    20、修正添加文章时添加子类别在火狐和谷歌浏览器下类别名为乱码 21、修正文章分类和产品分类模块调用数据不同步生效问题 22、修正数据库备份/恢复文字表达引起客户误解为整站数据备份问题,此功能仅针对数据库...

    奥瑞文在线培训系统服务器安装包v2.2.9

    兼容IE6、IE7、IE8、IE9、360、FireFox、Chrome、Opera等所有浏览器。 产品应用: 奥瑞文oTraining在线培训系统是培训领域的终端平台,HR最信赖工具应用,教育、金融、政府、医疗等企事业单位提供整体化解决方案的...

    小鱼儿外贸网站模板管理系统V3.8

    4,兼容IE、火狐各大常用浏览器,打开网页不变形 5,集成搜索引擎蜘蛛来访记录系统2.0,更好了解搜索引擎蜘蛛来访情况 6,网站导航实现自主管理,可自由添加、删除、隐藏栏目 7,管理员权限可分配,方便控制员工管理...

Global site tag (gtag.js) - Google Analytics