通过 PackageProperties 类获取 Excel 文件的创建日期

问题描述 投票:0回答:1

我在 10 分钟内使用 Apache POI 生成了一个大文件。为了最大限度地减少内存使用和时间,我仅在检测到记录发生变化时才生成文件。如果没有,我将只获取旧的最新 Excel 文件以供下载。问题是如何获取旧 Excel 文件的创建日期?我正在考虑使用 Apache 的

PackageProperties
类,尽管我不知道如何实现。

  1. 通过
    FileInputStream
    获取文件。
  2. 通过
    new XSSFWorkbook(FileInputStream inputStream)
    读取该文件。
  3. 我不知道下一步连接#2和#4。
  4. 接下来是获取该工作簿的
    PackageProperties
    属性。
  5. 使用
    PackageProperties.getCreatedProperty()
    获取创建日期。
  6. 如果在文件创建日期后检测到更改,我们将开始生成文件,然后用新文件覆盖旧版本文件,然后继续下载。如果未检测到任何更改,则继续下载以前的文件。

现在,我怎样才能得到工作簿的

PackageProperties
属性?

我已经用类似的案例检查了这个other entry(但使用的是 CSV 而不是 Excel),但似乎使用文件的最后修改属性并不总是与创建日期相同。

excel groovy apache-poi
1个回答
0
投票

对于版本 3.14,您可以使用:

((XSSFWorkbook) workbook).getPackage().getPackageProperties().getCreatedProperty().getValue()
© www.soinside.com 2019 - 2024. All rights reserved.