SimpleDateFormatでJava String/Date型の変換

2009/04/01 10:27Update
TAGS: SimpleDateFormat | String | 文字列 | Date | 日付 | 変換

Syboos.jp編集長

java.text.SimpleDateFormat は、日付のフォーマット(Date日付型をString文字列型へ変換)と解析(String文字列型をDate日付型へ変換)を行うためのシンプルなクラスです。

本文はSimpleDateFormatを使って、String/Date型の変換方法について、簡単なサンプルから学びたいと思います。

java.text.SimpleDateFormatの型階層


java.lang.Object
  ∟ java.text.Format
      ∟ java.text.DateFormat
          ∟ java.text.SimpleDateFormat

java.text.SimpleDateFormatでString/Date型の変換


サンプルからみてみます。

TestSimpleDateFormat.java
public class TestSimpleDateFormat {
    //パターン定義
    private static final String DATE_PATTERN = "yyyy.MM.dd HH:mm";

    //Date日付型をString文字列型へ変換
    private static String _date2string(Date date) {
        SimpleDateFormat sdf = new SimpleDateFormat(DATE_PATTERN);
        return sdf.format(date);
    }
    
    //String文字列型をDate日付型へ変換
    private static Date _string2date(String value) {
        SimpleDateFormat sdf = new SimpleDateFormat(DATE_PATTERN);
        try {
            return sdf.parse(value);
        } catch (ParseException e) {
            return null;
        }
    }
    
    //テスト
    public static void main(String []args) {
        //Date日付型をString文字列型へ変換
        Date date1 = Calendar.getInstance().getTime();
        String strDate1 = _date2string(date);
        System.out.println(strDate1);
        
        //String文字列型をDate日付型へ変換
        Date date2 = _string2date("2009.01.01 23:55")
        System.out.println(date2);
    }
}


SimpleDateFormatについて、ここでは、簡単な使い方しか紹介していませんので、詳細について、SimpleDateFormat のAPI仕様をご参照ください。
SimpleDateFormat API仕様

Sponsored Link