使用 Date 和 SimpleDateFormat 類表示時間
在程式開發中,經常需要處理日期和時間的相關資料,此時我們可以使用 java.util 包中的 Date 類。這個類最主要的作用就是獲取當前時間,我們來看下 Date 類的使用:
使用 Date 類的預設無參構造方法建立出的物件就代表當前時間,我們可以直接輸出 Date 物件顯示當前的時間,顯示的結果如下:
其中, Wed 代表 Wednesday (星期三), Jun 代表 June (六月), 11 代表 11 號, CST 代表 China Standard Time (中國標準時間,也就是北京時間,東八區)。
從上面的輸出結果中,我們發現,預設的時間格式不是很友好,與我們日常看到的日期格式不太一樣,如果想要按指定的格式進行顯示,如 2014-06-11 09:22:30 ,那該怎麼做呢?
此時就到了 java.text 包中的 SimpleDateFormat 類大顯身手的時候了!!可以使用 SimpleDateFormat 來對日期時間進行格式化,如可以將日期轉換為指定格式的文字,也可將文字轉換為日期。
1. 使用 format() 方法將日期轉換為指定格式的文字
程式碼中的 “yyyy-MM-dd HH:mm:ss” 為預定義字串, yyyy 表示四位年, MM 表示兩位月份, dd 表示兩位日期, HH 表示小時(使用24小時制), mm 表示分鐘, ss 表示秒,這樣就指定了轉換的目標格式,最後呼叫 format() 方法將時間轉換為指定的格式的字串。
執行結果: 2014-06-11 09:55:48
2. 使用 parse() 方法將文字轉換為日期
程式碼中的 “yyyy年MM月dd日 HH:mm:ss” 指定了字串的日期格式,呼叫 parse() 方法將文字轉換為日期。
執行結果:
一定要注意哦:
1、 呼叫 SimpleDateFormat 物件的 parse() 方法時可能會出現轉換異常,即 ParseException ,因此需要進行異常處理
2、 使用 Date 類時需要匯入 java.util 包,使用 SimpleDateFormat 時需要匯入 java.text 包
任務
親, Date 類和 SimpleDateFormat 類的使用您掌握了嗎?讓我們來檢驗下吧。
功能:實現將日期轉換為指定格式的文字,將文字轉換為日期
demo:(注意要先新增標頭檔案哦)
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public static void main(String[] args) throws ParseException { // 使用format()方法將日期轉換為指定格式的文字 SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy年MM月dd日 HH時mm分ss秒"); SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy/MM/dd HH:mm"); SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 建立Date物件,表示當前時間 Date now = new Date(); // 呼叫format()方法,將日期轉換為字串並輸出 System.out.println(sdf1.format(now)); System.out.println(sdf2.format(now)); System.out.println(sdf3.format(now)); // 使用parse()方法將文字轉換為日期 String d = "2014-6-1 21:05:36"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 呼叫parse()方法,將字串轉換為日期 Date date =sdf.parse(d); System.out.println(date); }
執行結果: