文档章节

Java POI Excel导出文件名中文乱码

杀丶破狼
 杀丶破狼
发布于 2015/11/04 10:33
字数 116
阅读 5329
收藏 2

在导出前对名称根据浏览器做下处理

// 判断浏览器类型,firefox浏览器做特殊处理,否则下载文件名乱码
	public static void compatibleFileName(HttpServletRequest request, HttpServletResponse response, String excelname) throws UnsupportedEncodingException {
		String agent = request.getHeader("USER-AGENT").toLowerCase();
		response.setContentType("application/vnd.ms-excel");
		String fileName = excelname;
		String codedFileName = java.net.URLEncoder.encode(fileName, "UTF-8");
		if (agent.contains("firefox")) {
			response.setCharacterEncoding("utf-8");
			response.setHeader("content-disposition", "attachment;filename=" + new String(fileName.getBytes(), "ISO8859-1") + ".xls");
		} else {
			response.setHeader("content-disposition", "attachment;filename=" + codedFileName + ".xls");
		}
	}


© 著作权归作者所有

共有 人打赏支持
杀丶破狼
粉丝 8
博文 63
码字总数 11552
作品 0
南京
程序员
私信 提问
加载中

评论(1)

南北桥
南北桥
用 utf-8 ff chrome 正常 ie下错误 为什么?
jxl导入/导出Excel(Maven)

About jxl is a pure java 5 super-project that includes Enclosure, Peermi, Enshell, and Xlp. jxl && POI jxl是一个开源的Java Excel API项目,通过Jxl,Java可以很方便的操作微软的Exc......

coderzs
2017/08/31
0
0
XXL-EXCEL v1.1.0 发布,Java 对象和 Excel 转换工具

XXL-EXCEL v1.1.0 发布,新特性如下: 1、字段支持Date类型。至此,已经支持全部基础数据类型。 2、Java转换Excel时,字段类型改为从Field上读取,避免Value为空时空指针问题。 3、升级POI至...

许雪里
2017/12/15
660
5
【乱码解决大神进】poi乱码问题

首先我得数据库和eclipse当中设置的编码都是utf8 数据库中查出来的中文在excel中显示不是乱码,在java代码中写的汉字在excel中显示是乱码 如图,红色圈住的是sql语句需要显示为汉字的,这三个...

帅狗
2016/07/18
894
1
Apache Ant 调用 properties 中文乱码问题

之前写了个ant的xml,其中打包之后的文件名是中文文件名,于是写入build.properties里读取,结果发现读取出来的是一堆乱码,于是上网找了下,才知道原来要把 中文字符转化成Unicode编码方式才...

鉴客
2011/12/21
2.4K
0
使用ubuntu 10.04中的中文乱码问题解决

1、ibus输入法 Ubuntu 系统安装后已经自带了ibus输入法,在英语环境下默认不启动。 配置ibus自动启动可以在ubuntu系统菜单上选择System --- Preferences --- Startup Applications,在该窗口...

durban
2012/08/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring Boot 2.x基础教程:快速入门

简介 在您第1次接触和学习Spring框架的时候,是否因为其繁杂的配置而退却了?在你第n次使用Spring框架的时候,是否觉得一堆反复黏贴的配置有一些厌烦?那么您就不妨来试试使用Spring Boot来让...

程序猿DD
7分钟前
0
0
SpringSecurity认证流程源码级详解

SpringSecurity认证流程源码级详解 认证流程说明 认证结果如何在多个请求之间共享 获取认证用户信息

chendom
14分钟前
0
0
C语言中的volatile——让我保持原样

volatile译为:易变的。这不是和题目的让我保持原样矛盾了吗?其实不然,在变量前加上该关键字修饰,确实是告诉编译器,这个变量是一个容易改变的变量,不要对它进行优化,每次都要到变量的地...

天王盖地虎626
22分钟前
0
0
五、RabbitMQ的消息属性(读书笔记)

简介 当使用RabbitMQ发布消息时,消息又AMQP规范中的三个低层帧类型组成: Basic.publish方法帧; 内容头帧; 消息体帧; 这三种帧类型按顺序一起工作,以便消息传递时完好无损。 其中,内容...

XuePeng77
25分钟前
0
0
JavaEE开发的颠覆者SpringBoot实战摘要笔记

一、注解理解 1.spring注解 1)@Configuration/@ComponentScan/@Bean注解实现java方式的配置。 @Configuration代替xml文件 @ComponentScan指定扫描范围 @Bean代替bean标签 2)@Bean、@Componen...

啃不动地大坚果
37分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部