Apache POI - Как получить дату с точно таким же форматированием, как показано в Excel? - PullRequest
0 голосов
/ 29 мая 2019

Я хочу загрузить файлы Excel с точно таким же форматированием, как показано в Excel.Однако я изо всех сил пытаюсь получить дату правильно 100% времени.

Я пытался использовать DataFormatter, упомянутый здесь: как прочитать точное содержимое ячейки файла Excel в 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 (28/12/18), что неверно;

  2. В Excel дата форматируется с использованием шаблона yyyy-MM-dd(2018-12-28), и приложение читает его как гггг-ММ-дд (2019-12-28), что нормально.

Как заставить его читать дату в том виде, в каком она появляетсяв Excel независимо от того, какое форматирование выбрано?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...