项目总结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

目录
相关文章
|
3月前
|
关系型数据库 MySQL Shell
不通过navicat工具怎么把查询数据导出到excel表中
不通过navicat工具怎么把查询数据导出到excel表中
46 0
|
21天前
|
Java API Apache
|
25天前
|
存储 Java API
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
34 4
|
29天前
|
JavaScript 前端开发 数据处理
Vue导出el-table表格为Excel文件的两种方式
Vue导出el-table表格为Excel文件的两种方式
|
2月前
|
SQL C# 数据库
EPPlus库的安装和使用 C# 中 Excel的导入和导出
本文介绍了如何使用EPPlus库在C#中实现Excel的导入和导出功能。首先,通过NuGet包管理器安装EPPlus库,然后提供了将DataGridView数据导出到Excel的步骤和代码示例,包括将DataGridView转换为DataTable和使用EPPlus将DataTable导出为Excel文件。接着,介绍了如何将Excel数据导入到数据库中,包括读取Excel文件、解析数据、执行SQL插入操作。
EPPlus库的安装和使用 C# 中 Excel的导入和导出
|
1月前
|
easyexcel Java UED
SpringBoot中大量数据导出方案:使用EasyExcel并行导出多个excel文件并压缩zip后下载
在SpringBoot环境中,为了优化大量数据的Excel导出体验,可采用异步方式处理。具体做法是将数据拆分后利用`CompletableFuture`与`ThreadPoolTaskExecutor`并行导出,并使用EasyExcel生成多个Excel文件,最终将其压缩成ZIP文件供下载。此方案提升了导出效率,改善了用户体验。代码示例展示了如何实现这一过程,包括多线程处理、模板导出及资源清理等关键步骤。
|
1月前
|
前端开发 JavaScript
💥【exceljs】纯前端如何实现Excel导出下载和上传解析?
本文介绍了用于处理Excel文件的库——ExcelJS,相较于SheetJS,ExcelJS支持更高级的样式自定义且易于使用。表格对比显示,ExcelJS在样式设置、内存效率及流式操作方面更具优势。主要适用于Node.js环境,也支持浏览器端使用。文中详细展示了如何利用ExcelJS实现前端的Excel导出下载和上传解析功能,并提供了示例代码。此外,还提供了在线调试的仓库链接和运行命令,方便读者实践。
325 5
|
1月前
|
前端开发 JavaScript Java
导出excel的两个方式:前端vue+XLSX 导出excel,vue+后端POI 导出excel,并进行分析、比较
这篇文章介绍了使用前端Vue框架结合XLSX库和后端结合Apache POI库导出Excel文件的两种方法,并对比分析了它们的优缺点。
297 0
|
2月前
|
存储 Java
java的Excel导出,数组与业务字典匹配并去掉最后一个逗号
java的Excel导出,数组与业务字典匹配并去掉最后一个逗号
47 2
|
3月前
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之如何直接导出excel文件
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。