【发布时间】:2016-11-24 08:56:20
【问题描述】:
我正在尝试使用 Apache 的 Java POI 将日期添加到电子表格中。但是,我最终得到的日期格式单元格中的日期没有被单元格识别为日期,而是被识别为字符串。然而,当我随后打开电子表格时,只需单击单元格 - 即在没有进行有效更改的情况下对其进行编辑 - 并且自动识别日期格式。我怎样才能让我的程序在我不需要干预的情况下执行这最后一步?非常感谢,提前!
CreationHelper creationHelper = wb.getCreationHelper();
XSSFCellStyle cellStyleDate = wb.createCellStyle();
LocalDate start = LocalDate.of(2000, 1, 1);
LocalDate end = LocalDate.of(2000, 12, 31);
cellStyleDate.setDataFormat(creationHelper.createDataFormat().getFormat("dd.mm.yyyy"));
int i = 1;
for (LocalDate date = start; date.isBefore(end); date = date.plusDays(1)) {
// wb.getSheetAt(0).createRow(i).createCell(0).setCellValue(date);
wb.getSheetAt(0).createRow(i).createCell(0).setCellValue(date.toString());
// wb.getSheetAt(0).createRow(i).createCell(0).setCellValue(date.getDayOfMonth() + "." + date.getMonthValue() + "." + date.getYear());
wb.getSheetAt(0).getRow(i).getCell(0).setCellStyle(cellStyleDate);
i++;
}
【问题讨论】:
标签: java excel date apache-poi