java设置单元格为文本_怎样设置单元格属性为文本格式?

你好,刚才参考你的方式试了一下,还是不行,首先我导出的java bean 属性,@ExcelProperty(value = "单据编号")

private String billNo; (没有加converter 属性),其次我的自定义handler是这样写的,public class CustomCellWriteHandler implements CellWriteHandler {

private static final Logger LOGGER = LoggerFactory.getLogger(CustomCellWriteHandler.class);

@Override

public void beforeCellCreate(WriteSheetHolder writeSheetHolder, WriteTableHolder writeTableHolder, Row row,

Head head, Integer columnIndex, Integer relativeRowIndex, Boolean isHead) {

}

@Override

public void afterCellCreate(WriteSheetHolder writeSheetHolder, WriteTableHolder writeTableHolder, Cell cell,

Head head, Integer relativeRowIndex, Boolean isHead) {

}

@Override

public void afterCellDispose(WriteSheetHolder writeSheetHolder, WriteTableHolder writeTableHolder,

List cellDataList, Cell cell, Head head, Integer relativeRowIndex, Boolean isHead) {

// 这里可以对cell进行任何操作

LOGGER.info("第{}行,第{}列写入完成。", cell.getRowIndex(), cell.getColumnIndex());

if (isHead && cell.getColumnIndex() == 0) {

cell.setCellType(CellType.STRING);

}

}

}

,最后我的导出util,public class EasyExcelUtils {

public static void export2ExcelByOutputStream(OutputStream outputStream,List list,Class clazz){

// 头的策略

WriteCellStyle headWriteCellStyle = new WriteCellStyle();

// 背景设置为白色

headWriteCellStyle.setFillForegroundColor(IndexedColors.WHITE.getIndex());

WriteFont headWriteFont = new WriteFont();

headWriteFont.setFontHeightInPoints((short)10);

headWriteCellStyle.setWriteFont(headWriteFont);

// 内容的策略

WriteCellStyle contentWriteCellStyle = new WriteCellStyle();

// 这里需要指定 FillPatternType 为FillPatternType.SOLID_FOREGROUND 不然无法显示背景颜色.头默认了 FillPatternType所以可以不指定

contentWriteCellStyle.setFillPatternType(FillPatternType.NO_FILL);

// 背景白色

contentWriteCellStyle.setFillForegroundColor(IndexedColors.WHITE.getIndex());

WriteFont contentWriteFont = new WriteFont();

// 字体大小

contentWriteFont.setFontHeightInPoints((short)15);

contentWriteCellStyle.setWriteFont(contentWriteFont);

// 这个策略是 头是头的样式 内容是内容的样式 其他的策略可以自己实现

HorizontalCellStyleStrategy horizontalCellStyleStrategy =new HorizontalCellStyleStrategy(headWriteCellStyle, contentWriteCellStyle);

// 这里 需要指定写用哪个class去写,然后写到第一个sheet,名字为模板 然后文件流会自动关闭

ExcelWriterSheetBuilder sheet = EasyExcel.write(outputStream,clazz).registerWriteHandler(horizontalCellStyleStrategy).registerWriteHandler(new CustomCellWriteHandler()).sheet("Sheet1");

sheet.useDefaultStyle(false).doWrite(list);

}

}

导出excel 后,导出的那个字符串还是科学计数法表示。很头疼,方便加个微信或者qq 询问一下吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值