从数据库导入日期到Excel工作表

时间:2014-06-03 09:10:37

标签: java excel spring-mvc

我正在尝试获取数据库数据并将数据传递到Excel工作表中,但问题是我在DB中有一个日期格式的列,当我将它传递给excel时,它给了我这样的奇怪数字41793,这是我的代码的一部分:

for (Defect defect : r5Defects) {
            r = s.createRow(rowNum++);

            r.createCell(0).setCellValue(defect.getId());
            ...
            r.createCell(5).setCellValue(HSSFDateUtil.getExcelDate(defect.getCreated()));       
            ...
        }

我该怎么做才能避免这个问题?

1 个答案:

答案 0 :(得分:1)

我创建了以下方法,它运行正常:

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);
    }