【折腾一上午】Java POI 导出 Excel 自适应列宽行高

主要方法:

调用

复制代码
sheet.autoSizeColumn(f) // f是需要自适应的列的序号

注:

  1. 在设置自适应之前需要调用以下方法,否则会报跟踪列错误。
复制代码
sheet.trackAllColumnsForAutoSizing()
  1. 当你去调用上个方法的时候发现,sheet并没有这个方法,这里需要sheet 和 workbook 定义为
复制代码
SXSSFSheet
复制代码
SXSSFWorkbook
  1. 查看代码里是否有设置行高,和列宽的代码都注释掉,否则自适应不会生效

  2. 把设置自适应行高放到填充数据之后,否则自适应也不会生效

5.对于中文列无法精准自适应,还是存在折行问题需要手动调整列宽:

复制代码
sheet.autoSizeColumn(f); // 自适应行高列宽
sheet.setColumnWidth(f, sheet.getColumnWidth(f) * 13 / 10); // 调整对中文的长度定位不准确

感谢提供中文列不适应解决方案的老哥:

https://blog.csdn.net/king0406/article/details/103409562

相关推荐
南归北隐11 小时前
Spring AI Alibaba Graph框架实现MCP数据库查询实战
java·后端·spring ai·mcp·spring ai mcp
古法老登瞎折腾12 小时前
大数据智能运维实战(九):让 AI 查日志——找到异常,也保留上下文
java·大数据·运维·人工智能·spring ai·mcp
ai大模型-探索者12 小时前
Function Call与MCP(区别、联系与实战)
java·服务器·网络
略略略咯咯12 小时前
啊啊啊啊啊
java·服务器·数据库
SL_staff12 小时前
运维救火实战:钉钉API变更致薪资计算中断,如何用可视化逻辑引擎5分钟热修复
java·开源·全栈
猫猫.15312 小时前
HashTable、HashMap、ConcurrentHashMap 核心区别总结
java·开发语言·java-ee
郭小李13 小时前
spring mvc 工作流程
java·spring·mvc
SL_staff13 小时前
BI大屏嵌入MES的登录态难题:JVS统一账号体系实战解法
java·数据分析·数据可视化
乌暮14 小时前
综合案例:宠物电商系统
java·开发语言·spring·mvc·restful·1024程序员节
VimorphTech14 小时前
一段字幕太长,怎样拆句并安排显示时间?
java·spring boot