嗨,我正在尝试使用HSSFCell
. 我的 excel shhet 由 4 列组成。日期、名称、In_time 和 Out_time。
在我的循环中,我给出了..
HSSFRow row = (HSSFRow) itr.next();
Iterator cell = row.cellIterator();
List data = new ArrayList();
while(cell.hasNext())
{
HSSFCell value = (HSSFCell) cell.next();
if (value.getCellType() == Cell.CELL_TYPE_NUMERIC)
{
if(HSSFDateUtil.isCellDateFormatted(value))
{
if(HSSFDateUtil.isADateFormat((int)value.getNumericCellValue(), "dd:mmm:yyyy"))
{
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String date = df.format(value.getDateCellValue());
data.add(date);
}
}
else
{
data.add(value.getNumericCellValue());
}
}
else if (value.getCellType() == Cell.CELL_TYPE_STRING)
{
data.add(value.getStringCellValue());
}
else
{
data.add("");
}
}
sheetData.add(data);
字段日期和名称正在正确检索。但是,当我尝试获取时间时,它会给出日期值。例如,在我的 excel 中,我有时间 4:05:12 AM ..但它把值作为某个日期,例如 1899-12-30 ..如何使用 Apache POI 从 Excel 表中读取日期值。