Java學習--使用 Date 和 SimpleDateFormat 類表示時間

有稜角的圓發表於2016-07-11

使用 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);
    }

 

執行結果:

相關文章