考虑向后兼容以及标准化的问题,我们使用开源工具apache poi进行excel的读取
POI读取的时候将cell里的内容都认为是double,这个与jxl的默认为string不一样
示例代码:
https://github.com/tonylee0329/java_lab/blob/master/src/main/java/org/tony/file/ReadExcel.java
遇到的问题
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上的代码
时间: 2024-10-10 00:25:12