APACHE POI - 将细胞样式设置为时间

时间:2016-02-18 13:24:43

标签: java excel apache-poi

我正在尝试将列样式设置为Time,以将日期对象显示为HH:mm

我试过这个方法:

private static void setTimeColumnFormatAsTime() {

    CellStyle cs = m_workbook.createCellStyle();
    CreationHelper createHelper = m_workbook.getCreationHelper();
    cs.setDataFormat(createHelper.createDataFormat().getFormat("HH:mm"));

    m_sheet.setDefaultColumnStyle(TIME_COL, cs);
}

但我得到的只是一些想法:25986.4895833333。当我手动将单元格格式化为时间时,我得到了正确的显示:11:45

我做错了什么?

谢谢大家。

1 个答案:

答案 0 :(得分:1)

在Gagravarr的帮助下(见上面的评论)我设法将样式设置为excel中的日期。

我现在专门为每个单元格设置样式,而不是整列的默认样式:

private static void setTimeColumnFormatAsTime(Cell a_cell) {

    CellStyle cs = m_workbook.createCellStyle();
    CreationHelper createHelper = m_workbook.getCreationHelper();
    cs.setDataFormat(createHelper.createDataFormat().getFormat("HH:mm"));
    a_cell.setCellStyle(cs);
}