使用POI HSSF API从Excel单元读取日期值

我将POI HSSF API用于Java中的excel操作。我在一个excel单元格中有一个日期值“ 8/1/2009”,当我尝试使用HSSF

API读取此值时,它将检测到单元格类型为数字并返回我的日期的“双精度”值。请参见下面的示例代码:

cell = row.getCell(); // date in the cell '8/1/2009'

switch (cell.getCellType()) {

case HSSFCell.CELL_TYPE_STRING:

cellValue = cell.getRichStringCellValue().getString();

break;

case HSSFCell.CELL_TYPE_NUMERIC:

cellValue = new Double(cell.getNumericCellValue()).toString();

break;

default:

}

Cell.getCellType()返回NUMERIC_TYPE,因此此代码将日期转换为两倍!:(

有什么方法可以读取HSSF POI中的日期!

回答:

您可以看一下:

HSSFDateUtil.isCellDateFormatted()

有关HSSFDateUtil的更多详细信息,请参见POI可怕的电子表格格式API:

http://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFDateUtil.html

这也提供了一些用于返回Excel

getExcelDate()和Java日期的辅助方法getJavaDate()。不过,您需要警惕不同的日期格式…

以上是 使用POI HSSF API从Excel单元读取日期值 的全部内容, 来源链接: utcz.com/qa/404571.html

回到顶部