【折腾一上午】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

相关推荐
松仔log1 天前
Java中级——组合和继承
android·java·开发语言
不才不才不不才1 天前
Spring 源码系列(16): doDispatch 全流程——一次请求的主干链路
java·后端·spring
snow@li1 天前
HikariCP:高性能数据库连接池全景深入梳理
java·数据库
edwarddamon1 天前
Spring Cloud 配置热更新与 Bean 代理机制梳理
java·后端
Raas1001 天前
MAIGateway,魔芋企业级AI网关的FinAPI成本竞争力设计
java·后端·网关·api网关·魔芋ai·finapi·mai gateway
evans在进步1 天前
Spring AI 从入门到实战:用 Java 实现大模型对话与 Tool Calling
java·人工智能·spring
evans在进步1 天前
LeetCode 189 轮转数组:三次反转原地解决,图解 Java 实现
java·算法·leetcode
我命由我123451 天前
Jetpack Compose - MaterialExpressiveTheme 与 MaterialTheme、ColorScheme
android·java·开发语言·java-ee·kotlin·android jetpack·android runtime
晚安code1 天前
Java 异常与日志规范:错误码、异常处理、日志规约一次讲清
java
深海呐1 天前
仓颉语言是ArkTs的上层语言吗?就像kotlin和Java
java·开发语言·kotlin·仓颉