easyexcel动态表头导出,表头是竖的解决办法

原创
ithorizon 6个月前 (10-22) 阅读数 20 #综合信息
使用easyexcel导出数据时表头是竖的,可以通过以下方法解决:设置纵向表头属性: easyexcel.write(file, excel.class).head(竖向表头数据).build();使用自定义导出格式转换器valueconverter,将水平表头值转换为竖向表头值: .registerconverter(new verticalheadervalueconverter())设置单元格旋转角度,将表头单元格旋转为90度: cellstyle.setrotation((short)

easyexcel动态表头导出,表头是竖的解决办法

EasyExcel动态表头导出:表头是竖的解决办法

问题:使用EasyExcel导出数据时,表头是竖的,如何解决?

解决办法:

  1. 设置纵向表头属性
EasyExcel.write(file, Excel.class).head(竖向表头数据).build();
登录后复制
  1. 使用ValueConverter自定义导出格式
import com.alibaba.excel.converters.Converter;
import com.alibaba.excel.enums.CellDataTypeEnum;
import com.alibaba.excel.metadata.GlobalConfiguration;
import com.alibaba.excel.metadata.property.ExcelContentProperty;
import com.alibaba.excel.util.StyleUtil;
import org.apache.poi.ss.usermodel.*;

public class VerticalHeaderValueConverter implements Converter<string> {

    @Override
    public CellDataTypeEnum supportExcelType() {
        return CellDataTypeEnum.STRING;
    }

    @Override
    public String convertToExcelValue(String value, ExcelContentProperty contentProperty, GlobalConfiguration globalConfiguration) {
        // 将水平表头值转换为竖向表头值
        return value.replaceAll(",", "\n");
    }

    @Override
    public String convertFromExcelValue(String value, ExcelContentProperty contentProperty, GlobalConfiguration globalConfiguration) {
        return value;
    }
}
</string>
登录后复制

然后在导出代码中应用自定义转换器:

EasyExcel.write(file, Excel.class).head(竖向表头数据)
        .registerConverter(new VerticalHeaderValueConverter())
        .build();
登录后复制
  1. 设置单元格旋转角度
Workbook workbook = EasyExcel.write(file).build();
Sheet sheet = workbook.getSheetAt(0);

// 设置第一列表头单元格旋转角度为90度
Cell cell = sheet.getRow(0).getCell(0);
CellStyle cellStyle = cell.getCellStyle();
cellStyle.setRotation((short) 90);
cell.setCellStyle(cellStyle);
登录后复制
  1. 使用自定义模板

创建 Excel 模板,将表头设置成竖向,然后使用 EasyExcel 的模板导出功能:

EasyExcel.write(file, Excel.class).withTemplate("模板文件路径").build();
登录后复制

通过以上方法,即可解决 EasyExcel 动态表头导出时表头是竖的问题。

以上就是easyexcel动态表头导出,表头是竖的解决办法的详细内容,更多请关注IT视界其它相关文章!



热门