当导出表格时,需要单元格格式是日期格式。
当直接使用 Cell.setCellValue(Date value)
设置日期格式时,导出的表格中的单元格会显示数值
那么如何将日期格式化?使用 CellStyle.setDataFormat(short fmt)
将数据格式化展示
poi 提供 BuiltinFormats
定义了一些常用的格式化格式,比如 m/d/yy
Date date = new Date(); CellStyle cellType = wb.createCellStyle(); cellType.setDataFormat((short) BuiltinFormats.getBuiltinFormat("m/d/yy")); cell.setCellStyle(cellType); cell.setCellValue(date);
定义的格式不符合要求时,我们也可以借助 CreationHelper
创建自定义的格式化格式
CreationHelper helper = wb.getCreationHelper(); cellType.setDataFormat(helper.createDataFormat().getFormat("yyyy/MM/dd"));