我想以与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;
(...)
示例:
在Excel中,日期格式为dd.MM.yyyy(28.12.2018),但应用程序将其读取为MM / dd / yy(12/28/18),这是错误的;
在Excel中,日期使用格式yyyy-MM-dd(2018-12-28)格式化,应用程序将其读取为yyyy-MM-dd(2019-12-28),这很好。
无论选择哪种格式,如何使它读取Excel中显示的日期?