使用POI读取Excel值的同学,一定为日期类型抓狂过!POI对单元格日期处理很弱,没有针对的类型,日期类型取出来的也是一个double值,所以同样作为数值类型。由于项目需要在下不能调整jar包,只好硬着头皮去解决。后来发现了一个方法:cell.getCellStyle().getDataFormatString() 可以判断单元格的格式类型,如下图于是便可以使用如下方法判断:使用这个方法判断的格式有限,如果能够限定单元格格式的话,这样是足够解决的。但我的项目坑爹的是Excel中的日期格式也是不固定的,还需要另谋出路。只能使用cell.toString() 得到最后我的解决办法是:首先使用了cell.getCellStyle().getDataFormatString()判断,如果能得到就返回“yyyy/MM/dd”格式的日期。到最后果然还是找我麻烦了,格式不行,必须转成“yyyy/MM/dd”格式。

新版POI获取日期类型cell值过程图解

新版POI获取日期类型cell值过程图解

新版POI获取日期类型cell值过程图解