0%

EasyExcel多层表头

EasyExcel多层表头

需要实现这种效果

多层表头

使用注解方式

1
2
3
4
5
6
7
8
9
10
11
12
static class UserInfo{
@ExcelProperty(value = {"基础信息","姓名"})
private String name;
@ExcelProperty(value = {"基础信息","手机号"})
private String phone;
@ExcelProperty(value = {"基础信息","年龄"})
private int age;
@ExcelProperty(value = {"其他信息","教育经历"})
private String education;
@ExcelProperty(value = {"其他信息","工作经历"})
private String workExperience;
}

然后直接使用该类作为表头类即可

1
2
3
EasyExcel.write("/Users/zhanghe/Desktop/user/fengshang/ads/ad-console/temp/2.xls",UserInfo.class)
.sheet()
.doWrite(new ArrayList<>());

使用List方式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
List<List<String>> list = new ArrayList<>();
// 第一列表头
List<String> head1 = new ArrayList<>();
head1.add("基础信息");
head1.add("姓名");

// 第二列表头
List<String> head2 = new ArrayList<>();
head2.add("基础信息");
head2.add("手机号");

// 第三列表头
List<String> head3 = new ArrayList<>();
head3.add("基础信息");
head3.add("年龄");

// 第四列表头
List<String> head4 = new ArrayList<>();
head4.add("其他信息");
head4.add("教育经历");

// 第五列表头
List<String> head5 = new ArrayList<>();
head5.add("其他信息");
head5.add("工作经历");

list.add(head1);
list.add(head2);
list.add(head3);
list.add(head4);
list.add(head5);

EasyExcel.write("/Users/zhanghe/Desktop/user/fengshang/ads/ad-console/temp/2.xls")
.head(list)
.sheet()
.doWrite(new ArrayList<>());

欢迎关注我的其它发布渠道