考慮向後兼容以及標準化的問題,我們使用開源工具apache poi進行excel的讀取
POI讀取的時候將cell裏的內容都認爲是double,這個與jxl的默認爲string不一樣
示例代碼:
遇到的問題
1.POI讀取科學計數法,可以使用NumberFormat對數據進行format.千位分隔符是否使用:setGroupingUsed()
參考代碼
BigDecimal num = new BigDecimal(cell.getNumericCellValue());
NumberFormat format = NumberFormat.getInstance();
format.setMaximumFractionDigits(2);
format.setGroupingUsed(false);
cellData = format.format(num);
2.POI對日期的識別也比較弱,所以需要進行format
new SimpleDateFormat("yyyy-MM-dd").format(DateUtil.getJavaDate(cell.getNumericCellValue()));
詳細的可以參考github上的代碼