使用POI教程编写日期

时间:2013-01-10 18:43:54

标签: apache-poi

我正在通过以下教程在excel表中使用poi API编写日期 http://poi.apache.org/spreadsheet/quick-guide.html#CreateDateCells 但是当我试图运行代码时,日期字段显示" ###"而不是实际的日期!! 这是代码段

CellStyle cellStyle = wb.createCellStyle(); 
cellStyle.setDataFormat(createHelper.createDataFormat().getFormat("m/d/yy h:mm"));
 Cell cell= row.createCell(4);
 cell.setCellValue(new Date());
 cell.setCellStyle(cellStyle);

1 个答案:

答案 0 :(得分:0)

Excel显示一个完整的"#"标志(例如" ########")当格式化单元格时,生成的文本太长而无法在单元格中显示所有文本。在Excel中打开电子表格时,将列加宽足够长的时间,它将显示格式化的日期。

要让POI创建电子表格,使列从一开始就足够宽,那么您需要自己设置列宽。

sheet.setColumnWidth(columnIndex, width)

在传入之前将宽度乘以256,因为此方法使用的宽度单位是字符的1/256。这是Javadoc:Sheet