我需要从 Excel 文件中获取单元格数据,因为它们看起来像 Apache PO 的 DataFormatter
类。除了包含日期的单元格之外,这就像一个魅力。下面是我的代码:
while (rowIterator.hasNext())
{
Row row = rowIterator.next();
StringBuilder rowDataBuilder = new StringBuilder();
int iCellCount = row.getLastCellNum();
for (int i = 0; i < iCellCount; i++)
{
Cell cell = row.getCell(i, Row.CREATE_NULL_AS_BLANK);
rowDataBuilder.append(dataFormatter.formatCellValue(cell));
rowDataBuilder.append(" | ");
}
_LOG.info("-----> row data: " + rowDataBuilder.toString());
}
例如,一个单元格包含 5/3/2013,我只得到 5/3/13。有什么解决办法吗?
最佳答案
要以所需格式获取日期,您可以使用以下内容:
SimpleDateFormat DtFormat = new SimpleDateFormat("dd/MM/yyyy");
Date date=Test.getRow(RowNum).getCell(CellNum).getDateCellValue();
System.out.println(DtFormat.format(date).toString());
现在,如果单元格值为 05/03/2013,则 o/p 将为 05/03/2013。我希望这能解决您的问题。
关于java - 包含日期的单元格上的 DataFormatter 呈现两位数年份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16891181/