1. 程式人生 > >Java處理excel匯入資料庫日期格式的處理(24時制變為12時制問題的處理)

Java處理excel匯入資料庫日期格式的處理(24時制變為12時制問題的處理)

最近做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我到現在還是沒有太明白,明白的請留言或者私聊我!