EasyExcel支持读取动态表头,通过以下步骤实现:1. 创建读取器;2. 设置读取选项,启用表头读取;3. 将表头解析为Map。

easyExcel读取动态表头
如何读取动态表头?
EasyExcel支持读取动态表头,用户可以通过以下步骤实现:
-
创建读取器:
EasyExcel.read(is),其中is是输入流。 -
设置读取选项:
sheet().readHead(true),启用表头读取。 -
将表头解析为Map:
readSheet(Class extends Head>, ExcelReader 头解析器)。
详细步骤:
-
创建读取器:
// 创建输入流 InputStream is = new FileInputStream("动态表头.xlsx"); // 创建读取器 EasyExcel.read(is).build(); -
启用表头读取:
// 获取第一个工作表 Sheet sheet = sheet0; // 启用表头读取 sheet.readHead(true);
-
解析表头到Map:
// 定义表头类,继承Head public class DynamicHead implements Head { // 表头名称 @ExcelProperty(value = "表头名1", index = 0) private String head1; // 获取表头名1 public String getHead1() { return head1; } // 设置表头名1 public void setHead1(String head1) { this.head1 = head1; } } // 将表头解析为Map ExcelReader reader = new ExcelReader(head -> { // 创建Map MapheadMap = new HashMap<>(); // 循环表头 for (Head head : head) { // 获取表头名和索引 headMap.put(head.getIndex(), head.getValue()); } return headMap; }); Map headMap = sheet.readSheet(DynamicHead.class, reader);
获取表头值:
读取表头Map后,可以通过索引获取表头值:
// 根据索引获取表头值 String headValue = headMap.get(0);











