poi解析Excel時日期爲數字的解決方法

轉自:https://blog.csdn.net/yuefeicall/article/details/78799742

 

在使用poi解析Excel文件時,會發現,表格中的日期解析出來是一個數字,如下:

這是Excel表格的截圖:

這是poi解析出來的這個日期的結果:

我們期望這個日期解析出來是:2015/8/21,而結果卻是42237.什麼原因呢?這個數字是什麼呢?是以1900年爲原點,到2015年8月21日,之間經過的天數。

知道這個後,就很好處理了,我們拿到1900年的日期,在這個日期上加上42237天即可。如下:

 

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

然後,利用DateUtils的方法,加上天數(截圖案例中,這個天數被轉爲了字符串,值爲42237),如下:

 

  1. Date dd = DateUtils.addDays(d,Integer.valueOf(conStart1));  

此時,這個dd的值,打印出來,就是 Fri Aug 21 00:00:00 CST 2015,直接把這個Date類型的dd,存到數據庫,即可,存儲後如下:

2015-08-21

 

PSSSSSSSSSSS:啥玩意都能讓我遇到……

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章