Java處理excel匯入資料庫日期格式的處理(24時制變為12時制問題的處理)
阿新 • • 發佈:2019-01-01
最近做excel匯入時碰到一個時間時制的問題
excel文件裡是24時制的,結果匯入到資料庫發現是12時制的,最後在360doc上找到了解決問題,這裡是記錄下自己的理解和處理方法。
首先:文件裡的時間格式
匯入到資料庫的格式
Java程式碼實現之前請確保匯入了jxl.jar包及資料庫連線包
jxl.Workbook rwb=null; InputStream is = new FileInputStream("檔案路徑"); rwb = jxl.Workbook.getWorkbook(is); Sheet rs = rwb.getSheet(0); int rsColumns = rs.getColumns(); int rsRows = rs.getRows(); String typeStr = ""; String[][] content = new String[rsRows][rsColumns]; for(int i=1;i<rsRows;i++){ for(int j=0;j<rsColumns;j++){ Cell cell = rs.getCell(j, i); if(cell.getType() == CellType.DATE){ DateCell dc = (DateCell)cell; Date date = dc.getDate(); //獲取單元格的date型別 long time = (date.getTime()/1000)-60*60*8; date.setTime(time*1000); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); content[i][j] = formatter.format(date); }else{ content[i][j] = cell.getContents(); } }
這時輸出的時間結果就跟excel表裡的日期一至了
具體為什麼-60*60*8我到現在還是沒有太明白,明白的請留言或者私聊我!