项目总结1——excel导出相关问题

简介:
1、excel导出文件时,文件名中中文部分空白不显示的问题,原本写法是:
String fileName = "物联网PBOSS主机巡检日报-" + inspectTime + ".xls";
response.addHeader("Content-Disposition", "attachment;filename=" + new String(fileName.getBytes("GBK"), "utf-8"));
response.setCharacterEncoding("UTF-8");

修改后的写法是:
String fileName = "物联网PBOSS主机巡检日报-" + inspectTime + ".xls";
response.addHeader("Content-Disposition", "attachment;filename=" + new String(fileName.getBytes("GBK"), "ISO8859_1"));
response.setCharacterEncoding("UTF-8");

并没有太明白为什么这样写就可以了,因为我整个项目的字符集编码是utf-8,而filName.getbytes后却要写gbk。网上搜了一下,也还没有找到满意的说法。

2、excel导出时单元格样式的问题,因为我导出时使用了excel模板,已经提前把单元格线条都设置好了,所以原本的样式代码如下,并没有设置单元格线条:
HSSFCellStyle style1 = wb.createCellStyle();
// 平行居中
style1.setAlignment(HSSFCellStyle.ALIGN_CENTER);
// 垂直居中
style1.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);

但是结果导出以后就出现了许多格子没有实体线条,很不美观。
c954b5493f06980fc3eeb4007907184d092575f8
最终解决办法是为每个单元格的四面边框都设置边框线,修改后的样式代码如下:
HSSFCellStyle style1 = wb.createCellStyle();
// 平行居中
style1.setAlignment(HSSFCellStyle.ALIGN_CENTER);
// 垂直居中
style1.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
//设置边框线
style1.setBorderBottom((short) 1);
style1.setBorderLeft((short) 1);
style1.setBorderRight((short) 1);
style1.setBorderTop((short) 1);

修改后再次导出后样式就美观多了:
f445e53fdf443efbd925dfc5bbdd8521c139f5c9

目录
相关文章
|
1月前
|
NoSQL 关系型数据库 MySQL
多人同时导出 Excel 干崩服务器?怎样实现一个简单排队导出功能!
业务诉求:考虑到数据库数据日渐增多,导出会有全量数据的导出,多人同时导出可以会对服务性能造成影响,导出涉及到mysql查询的io操作,还涉及文件输入、输出流的io操作,所以对服务器的性能会影响的比较大;结合以上原因,对导出操作进行排队; 刚开始拿到这个需求,第一时间想到就是需要维护一个FIFO先进先出的队列,给定队列一个固定size,在队列里面的人进行排队进行数据导出,导出完成后立马出队列,下一个排队的人进行操作;还考虑到异步,可能还需要建个文件导出表,主要记录文件的导出情况,文件的存放地址,用户根据文件列表情况下载导出文件。
多人同时导出 Excel 干崩服务器?怎样实现一个简单排队导出功能!
|
3月前
|
Java Apache Spring
springboot如何导出Excel某个表的表字段以及字段类型
springboot如何导出Excel某个表的表字段以及字段类型
32 0
|
3月前
|
关系型数据库 MySQL 数据库连接
python查询数据库的某个表,将结果导出Excel
python查询数据库的某个表,将结果导出Excel
45 0
|
2月前
|
XML Java 数据格式
使用Freemarker模版导出xls文件使用excel打开提示文件损坏
使用Freemarker模版导出xls文件使用excel打开提示文件损坏
49 0
|
1月前
|
SQL Java easyexcel
【Java】百万数据excel导出功能如何实现
【Java】百万数据excel导出功能如何实现
109 0
|
2月前
|
Java
使用POI导出Excel
使用POI导出Excel
|
2月前
|
前端开发 Java Maven
springboot优雅的实现excel的导出(自适应列宽实现,中文也行),复制可用
springboot优雅的实现excel的导出(自适应列宽实现,中文也行),复制可用
55 0
|
2月前
|
测试技术 数据处理 Python
测试报告导出PDF和excel的方法
测试报告导出PDF和excel的方法
|
3月前
|
Python
python如何导出Excel某个表的表字段以及字段类型
python如何导出Excel某个表的表字段以及字段类型
24 0