gpt4 book ai didi

java - 指导 Apache poi 如何读取日期单元格

转载 作者:行者123 更新时间:2023-12-02 12:57:16 32 4
gpt4 key购买 nike

我正在导入一个包含多行的 Excel 文件。有些列是日期,我必须这样读取它们,但 Apache poi 无法正确读取单元格的格式。事实上,日期必须是 dd/MM/YYYY,但是当我有 04/13/2017 时,Apache poi 库认为它的格式是 MM/dd/YYYY,并因此读取日期。

我如何告诉 apache poi 以正确的格式读取日期?

下面是我的代码示例:

                           case Cell.CELL_TYPE_NUMERIC:
if (DateUtil.isCellDateFormatted(cell)) {
Date d = cell.getDateCellValue());
System.out.println(myWorkBook.getSheetName(i) + " " + cell.getNumericCellValue() + "\t");
}

最佳答案

正确的方法是使用 getDataFormatString,就像这个答案 Validating the excel date for MM/dd/yyyy format 中所做的那样。但是builtin formats数量有限。

如果内置格式的限制困扰您,可以通过 Data formatter 将值转换为字符串。

DataFormatter formatter = new DataFormatter();
String formattedValue = formatter.formatCellValue(cell);

已从 Excel 文件执行日期字段的验证,如果格式不正确,则日期将作为字符串读取。

关于java - 指导 Apache poi 如何读取日期单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44389226/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com