[alibaba/easyexcel]中文列宽自适应问题

2024-06-20 628 views
9

POI里面的中文列宽自适应有问题,这里写Excel时,用的也是POI。所以也会有问题。请问这个能解决嘛或者给个解决的思路吗?

回答

9
ExcelWriter writer = new ExcelWriter(out, ExcelTypeEnum.XLSX, true);
            //写第一个sheet, sheet1  数据全是List<String> 无模型映射关系
            Sheet sheet1 = new Sheet(1, 0,User.class);
            sheet1.setSheetName("第一个sheet");
            sheet1.setAutoWidth(true);
            Map<Integer,Integer> ii =  new HashMap<>();
            ii.put(0,45*256); //第一列
            ii.put(1,55*256);//第二列 有多少列你是知道的
            sheet1.setColumnWidthMap(ii);
            List<User> uu = new ArrayList<>();
            uu.add(User.builder().barcode("1111111111111111111111111111111111111111").quantity("2222").build());
            uu.add(User.builder().barcode("1111111111111111111111111111111111111111111111111111111").quantity("1111111111111111111111111111111111111111111").build());
            uu.add(User.builder().barcode("11111").quantity("2222").build());
            writer.write(uu, sheet1);
            writer.finish();
7

可以的, sheet1.setColumnWidthMap(columnWidth);

8

怎么居中呢