其他分享
首页 > 其他分享> > poi解析excel文件获取日期的格式是数值的解决方法

poi解析excel文件获取日期的格式是数值的解决方法

作者:互联网

poi解析excel文件获取日期的格式是数值的解决方法

今天解析excel文件获取日期的时候,本想着是带有格式的日期类似(yyyy-MM-dd或者yyyy/MM/dd)这种,却发现值发现是47331.00带有小数点的值

后来查看excel对应列的格式

 

 后来查阅资料发现这个数值是获取1900年的,然后往前或者往后推多少天然后得到填写的日期

比如说excel填写的日期的2029-08-01,那就是1900-01-01往后加47331天就是日期2029-08-01

那现在知道了问题,就好解决了,首先获取1900年份

Calendar calendar = new GregorianCalendar(1900,0,-1);
Date date = calendar.getTime();

 然后加上获取到的天数得到实际的日期

Date realDate = DateUtils.addDays(date,Double.valueOf(endDate).intValue());

 

 

标签:01,excel,获取,日期,poi,格式,解析,1900
来源: https://www.cnblogs.com/xp01/p/14760870.html