我正在尝试获取数据库数据并将数据传递到 Excel 工作表中,但问题是我在数据库中有一个日期格式的列,当我将其传递到 Excel 中时,它给了我这样的奇怪数字41793,这是我的代码:
for (Defect defect : r5Defects) {
r = s.createRow(rowNum++);
r.createCell(0).setCellValue(defect.getId());
...
r.createCell(5).setCellValue(HSSFDateUtil.getExcelDate(defect.getCreated()));
...
}
我应该怎样做才能避免这个问题?
最佳答案
我创建了以下方法并且运行良好:
HSSFCellStyle cellStyleDate = (HSSFCellStyle) wb.createCellStyle();
cellStyleDate.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy"));
public void cell(Workbook wb, Row r, Date value,HSSFCellStyle cellStyleDate, int n) {
HSSFCell cell = (HSSFCell) r.createCell(n);
cell.setCellStyle(cellStyleDate);
cell.setCellValue(value);
}
关于java - 将日期从数据库导入到 Excel 工作表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24011225/