Calendarクラスで現在時刻取得と日付指定する方法

java

Javaの日付型と日付型変換(Calendarクラス編)について紹介します。

[スポンサーリンク]

目次

  1. Calendarクラスで現在日時を取得
  2. Calendarクラスで年月日時分秒ミリ秒を単体で取得
  3. Calendarクラスで日付を指定
  4. Calendarクラスで1時間減算
  5. Calendarクラスで1時間加算

Calendarクラスで現在日時を取得

    public static void main(String arg[]) {

        Calendar nowCalendar = Calendar.getInstance();

        // 現在日時を取得
        // getTimeを使って、現在日時(Date型)を取得します。
        System.out.println("現在日時 : " + nowCalendar.getTime());

        // 上記、現在日時のフォーマットを指定
        SimpleDateFormat formatA = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");
        String formatDate = formatA.format(nowCalendar.getTime());
        System.out.println("フォーマット指定後の現在日時 : " + formatDate);

    }

実行結果

>実行結果
現在日時 : Sat May 26 19:25:00 JST 2012
フォーマット指定後の現在日時 : 2012/05/26 07:25:00

Calendarクラスで年月日時分秒ミリ秒を単体で取得

    public static void main(String arg[]) {

        Calendar nowCalendar = Calendar.getInstance();

        // 現在時刻の年を取得
        System.out.println("年: " + nowCalendar.get(nowCalendar.YEAR));

        // 現在時刻の月を取得
        // 注意:月は、0-11で取得されるため、1加算する必要があります
        System.out.println("月: " + (nowCalendar.get(nowCalendar.MONTH)+1));

        // 現在時刻の日を取得
        System.out.println("日: " + nowCalendar.get(nowCalendar.DAY_OF_MONTH));

        // 現在時刻の時間を取得
        System.out.println("時間: " + nowCalendar.get(nowCalendar.HOUR_OF_DAY));

        // 現在時刻の分を取得
        System.out.println("分: " + nowCalendar.get(nowCalendar.MINUTE));

        // 現在時刻の秒を取得
        System.out.println("秒: " + nowCalendar.get(nowCalendar.SECOND));

        // 現在時刻のミリ秒を取得
        System.out.println("ミリ秒: " + nowCalendar.get(nowCalendar.MILLISECOND));

    }

実行結果

>実行結果
年: 2012
月: 5
日: 26
時間: 19
分: 25
秒: 39
ミリ秒: 920

Calendarクラスで日付を指定

    public static void main(String arg[]) {

        Calendar nowCalendar = Calendar.getInstance();

        // 年を指定
        nowCalendar.set(nowCalendar.YEAR, 2010);

        // 月を指定
        // 注意:月は、0-11で表されるため、5月を指定したい場合は、1減算した4を指定する必要があります。
        nowCalendar.set(nowCalendar.MONTH, 4);

        // 日を指定
        nowCalendar.set(nowCalendar.DAY_OF_MONTH, 1);

        // 時間を指定
        nowCalendar.set(nowCalendar.HOUR_OF_DAY, 17);

        // 分を指定
        nowCalendar.set(nowCalendar.MINUTE, 10);

        // 秒を指定
        nowCalendar.set(nowCalendar.SECOND, 10);

        // ミリ秒を指定
        nowCalendar.set(nowCalendar.MILLISECOND, 999);

        // 上記、現在日時のフォーマットを指定
        SimpleDateFormat formatA = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss:SSS");
        String formatDate = formatA.format(nowCalendar.getTime());
        System.out.println("指定した日付 : " + formatDate);
    }

実行結果

>実行結果
指定した日付 : 2010/05/01 05:10:10:999

Calendarクラスで1時間減算

    public static void main(String arg[]) {

        Calendar nowCalendar = Calendar.getInstance();

        // 1時間減算する。
        nowCalendar.add(nowCalendar.HOUR_OF_DAY, -1);

        // 上記、現在日時のフォーマットを指定
        SimpleDateFormat formatA = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss:SSS");
        String formatDate = formatA.format(nowCalendar.getTime());
        System.out.println("1時間減算した日付 : " + formatDate);
    }

実行結果

>実行結果
1時間加算した日付 : 2012/05/26 20:27:03:894

Calendarクラスで1時間加算

    public static void main(String arg[]) {

        Calendar nowCalendar = Calendar.getInstance();

        // 1時間加算する。
        nowCalendar.add(nowCalendar.HOUR_OF_DAY, 1);

        // 上記、現在日時のフォーマットを指定
        SimpleDateFormat formatA = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss:SSS");
        String formatDate = formatA.format(nowCalendar.getTime());
        System.out.println("1時間加算した日付 : " + formatDate);
    }

実行結果

>実行結果
1時間減算した日付 : 2012/05/26 18:27:29:016

続きは

続いての章では、
プログラミングの基本的な構文if文を解説していきます。
javaの分岐(if文))