
Cell cell; DateCell dc; String str = ""; Date date; SimpleDateFormat SF_date = new SimpleDateFormat("yyyy-M-d"); SimpleDateFormat SF_time = new SimpleDateFormat("HH:mm:ss"); cell = sheet.getCell(10,0); dc = (DateCell)cell; date = dc.getDate(); str = SF_date.format(date); System.out.PRintln(str); str = SF_time.format(date); System.out.println(str); 輸出結果如下:
可以看出,日期的格式是正確的,但是數值不正確,恰好比實際的時間多出了8個小時。修正的方法是添加修改時區的代碼。 幾點說明:
1.excel中時間類型的cell需要用datecell讀取,將cell強制轉為datecell類型后,用datecell的getDate方法得到date類型的數據。
2.使用simpleDateFormat來指定日期的格式,代碼如上。
3.用到的幾個包:
import java.text.SimpleDateFormat; import java.util.Date;
import jxl.Cell;
import jxl.DateCell;
修改時區
修改時區,需要修改代碼為: Cell cell; DateCell dc; String str = ""; Date date; SimpleDateFormat SF_date = new SimpleDateFormat("yyyy-M-d"); SimpleDateFormat SF_time = new SimpleDateFormat("HH:mm:ss"); TimeZone zone = TimeZone.getTimeZone("GMT"); cell = sheet.getCell(X_Axi,0); dc = (DateCell)cell; date = dc.getDate(); SF_date.setTimeZone(zone); SF_time.setTimeZone(zone); str = SF_date.format(date); System.out.println(str); str = SF_time.format(date); System.out.println(str); 輸出結果為:
新聞熱點
疑難解答