Apache POI从2.5升级到5版本找不到org.apache.poi.hssf.util.Region类咨询
Apache POI 5版本Region类缺失解决方案
1. 类缺失原因说明
org.apache.poi.hssf.util.Region是POI 2.x、3.x早期版本的专属API,从POI 3.8版本开始正式标记为弃用,POI 4.x及之后的5版本已经完全移除该类,不存在对应可导入的jar包,直接使用官方提供的通用替代类即可。
2. 替代API介绍
官方提供的替代类为 org.apache.poi.ss.util.CellRangeAddress,属于POI通用操作层API,同时兼容XLS(HSSF)、XLSX(XSSF)两种格式的表格操作,比旧版Region兼容性更强,不存在旧版列数受short类型最大值限制的溢出问题。
3. 代码替换示例
原POI 2.5代码:
sheet.addMergedRegion(new Region(0,(short)13,0,(short)16));
POI 5适配后代码:
// CellRangeAddress构造参数顺序:起始行号、结束行号、起始列号、结束列号 sheet.addMergedRegion(new CellRangeAddress(0, 0, 13, 16));
4. 注意事项
- 替换时需注意参数顺序差异:旧版
Region参数顺序为起始行、起始列、结束行、结束列,新版CellRangeAddress参数顺序为起始行、结束行、起始列、结束列,不要写错参数顺序导致合并区域错误 - 新版API列号参数为int类型,无需再做short强制转换
内容的提问来源于stack exchange,提问作者user3067524
相关产品推荐
相关产品推荐

