gpt4 book ai didi

java - 如何使用 Apache POI 搜索特定日期的 Excel 工作表?

转载 作者:搜寻专家 更新时间:2023-10-31 20:23:40 24 4
gpt4 key购买 nike

我一直在使用给出的示例代码来搜索工作表的内容:

Sheet sheet1 = wb.getSheetAt(0);
for (Row row : sheet1) {
for (Cell cell : row) {
CellReference cellRef = new CellReference(row.getRowNum(), cell.getCellNum());
System.out.print(cellRef.formatAsString());
System.out.print(" - ");

switch(cell.getCellType()) {
case Cell.CELL_TYPE_STRING:
System.out.println(cell.getRichStringCellValue().getString());
break;
case Cell.CELL_TYPE_NUMERIC:
if(DateUtil.isCellDateFormatted(cell)) {
System.out.println(cell.getDateCellValue());
} else {
System.out.println(cell.getNumericCellValue());
}
break;
case Cell.CELL_TYPE_BOOLEAN:
System.out.println(cell.getBooleanCellValue());
break;
case Cell.CELL_TYPE_FORMULA:
System.out.println(cell.getCellFormula());
break;
default:
System.out.println();
}
}

但无法找到一种方法来正确比较从工作表中提取的日期与给定日期。我试过使用数据验证并将日期格式化为字符串并包括更多条件语句,但没有任何效果。

似乎是一个相对简单的问题,但还没有能够解决它?

如有任何帮助,我们将不胜感激!

最佳答案

Excel 将日期存储为浮点小数,这显然与 Java 处理日期(long 值)的方式不同。

Apache POI 包含一个辅助类,用于在 Java 和 Excel 之间进行日期转换:DateUtil .这应该有所帮助(如果我解决了您的问题)。

关于java - 如何使用 Apache POI 搜索特定日期的 Excel 工作表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4591325/

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