easyexcel写动态表头(横向扩展)

先看实现效果:

easyexcel写动态表头(横向扩展)_第1张图片

 

代码部分:

主要注意几点:

1:表头和数据行格式时List>格式

2:顺序,表头headList和数据行的dataList要下标对应,

public class ExcelExportTest {
 
    @Test
    public void testExport01(){
        String fileName = "d:\\文件名称" + System.currentTimeMillis() + ".xlsx";
        EasyExcel.write(fileName)
                // 这里放入动态头
                .head(head()).sheet("模板")
                // 当然这里数据也可以用 List> 去传入
                .doWrite(getData());
    }
 
    public List> getData(){
        List> total=new ArrayList<>();
        List list=new ArrayList<>();
        for (int i = 0; i < 15; i++) {
            list.add("我是第"+i+"列!");
        }
        total.add(list);
 
        return total;
 
    }
 
    private List> head() {
        List> list = new ArrayList>();
        List head0 = new ArrayList<>();
        head0.add("Id" );
 
        List head1 = new ArrayList<>();
        head1.add("名称");
 
        List head2 = new ArrayList<>();
        head2.add("尺寸");
 
 
        list.add(head0);
        list.add(head1);
        list.add(head2);
 
        List productHead= new ArrayList<>();
        productHead.add("aaa");
        productHead.add("bbb");
        productHead.add("ccc");
 
        List head3 = new ArrayList<>();
        for (int i = 1; i < 5; i++) {
            for (String s : productHead) {
                head3 = new ArrayList<>();
                head3.add("子产品"+i);
                head3.add(s);
                list.add(head3);
            }
        }
 
        return list;
    }

你可能感兴趣的:(linq,蓝桥杯,elementui)