网站首页 > java教程 正文
EasyExcel 是阿里巴巴的一个基于Java的简单方便省内存的读写Excel开源项目。
常用方法,见官方文档:
https://easyexcel.opensource.alibaba.com/docs/current/
下面介绍,Alibaba EasyExcel:合并列、行 设置,版本 2.2.6+
合并列、行,使用 OnceAbsoluteMergeStrategy 非常方便 。
一、使用 直接 new OnceAbsoluteMergeStrategy 对象:
new OnceAbsoluteMergeStrategy(1,2,0,0) 表示合并 0 列的 1和2两行,
这里的行列,均从 0 开始。
下面是 其 构造函数:
public OnceAbsoluteMergeStrategy(int firstRowIndex, int lastRowIndex, int firstColumnIndex, int lastColumnIndex)
其中前两个参数是限制行,后两个参数是限制列,均包含在内。
二、通过 registerWriteHandler 方法注册进去即可:
1. 使用 总的 ExcelWriterBuilder 对象,或者 每个 Sheet 的 ExcelWriterSheetBuilder 对象,均可注册。
2. 在使用 总的 ExcelWriterBuilder 对象,注册很多的动态 WriteHandler 对象时,链式写法反而不方便,使用List反而操作方便些(当然如果都是些固定的WriteHandler,就无所谓了)
List<WriteHandler> writeHandlerList = Lists.newArrayList();
writeHandlerList.add(new ColumnWidthStyleStrategy()); // 列宽
writeHandlerList.add(new RowHeightStyleStrategy()); // 行高
writeHandlerList.add(new OnceAbsoluteMergeStrategy(1,2,0,0)); // 合并行
ExcelWriterBuilder excelWriterBuilder = EasyExcel.write(response.getOutputStream());
for (WriteHandler writeHandler : writeHandlerList) {
excelWriterBuilder.registerWriteHandler(writeHandler);
}
ExcelWriter excelWriter = excelWriterBuilder.build();
三、如果有多地方合并,可以注册N个 OnceAbsoluteMergeStrategy 对象:
excelWriterBuilder.registerWriteHandler(new OnceAbsoluteMergeStrategy(1,2,0,0))
.registerWriteHandler(new OnceAbsoluteMergeStrategy(2,2,3,4))
.registerWriteHandler(new OnceAbsoluteMergeStrategy(5,7,1,3))
.registerWriteHandler(new OnceAbsoluteMergeStrategy(4,4,0,head.size()));
- 上一篇: JAVA学习:跨平台时如何处理回车换行
- 下一篇: 算法:有序数组的平方(Java版)
猜你喜欢
- 2025-05-28 算法:有序数组的平方(Java版)
- 2025-05-28 JAVA学习:跨平台时如何处理回车换行
- 2025-05-28 Java经典实例分析和相关知识总结与思考
- 2025-05-28 去字节跳动面试(Java岗),这1道面试题100%会问到
- 2025-05-28 分片篇:shardingsphere JDBC 5.X 改写引擎设计思路
你 发表评论:
欢迎- 06-04C++优先级调度队列(Priority Queue)
- 06-04数据结构与算法-优先队列(优先队列 数组实现)
- 06-04什么是优先队列?(优先队列原理)
- 06-04终于有架构大牛把分布式系统概念讲明白了,竟然用了足足800页
- 06-04分布式事物如何保证接口请求顺序性?
- 06-04微服务下分布式事务模式的详细对比
- 06-04彻底掌握分布式事务2PC、3PC模型(分布式事务 三阶段)
- 06-04分布式事务最全详解(看这篇就够了)
- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)