Apache POI-如何以与Excel中显示的格式完全相同的格式获取日期?

时间:2019-05-29 14:27:01

标签: java excel apache-poi date-formatting

我想以与Excel中显示的格式完全相同的格式加载Excel文件。但是,我正在努力100%正确地获得日期。

我尝试使用此处提到的DataFormatter: how to read exact cell content of excel file in apache POI 但没有运气。

我的代码是:

switch (cell.getCellType()) {
(...)
   case NUMERIC:
      if (DateUtil.isCellDateFormatted(cell)) {
         DataFormatter df = new DataFormatter()                                 
         data.get(i).add(df.formatCellValue(cell));
      } else {
         data.get(i).add(String.valueOf(cell));
      }
      break;
(...)

示例:

  1. 在Excel中,日期格式为dd.MM.yyyy(28.12.2018),但应用程序将其读取为MM / dd / yy(12/28/18),这是错误的;

  2. 在Excel中,日期使用格式yyyy-MM-dd(2018-12-28)格式化,应用程序将其读取为yyyy-MM-dd(2019-12-28),这很好。

无论选择哪种格式,如何使它读取Excel中显示的日期?

0 个答案:

没有答案