エンジニアの将来って?

現在6年目の元COBOL現Javaエンジニアが、将来への考えや勉強のアウトプット、たまに腎臓について書くブログです

JavaのTimeZoneでいろいろ設定する

こんにちは、たいらです。
今回はJavaでTimeZoneのアウトプットです。
作ったのは2つあって、1つはデフォルトのTimeZoneと指定したTimeZoneを表示させるだけです。
2つ目は指定したTimeZoneのCalendarの現在時刻を表示させます。

1つ目

Java

import java.util.TimeZone;

/**
* TimeZoneを練習するクラス
*
*/
public class TimeZoneTest {
/**
* メインメソッド
* @param args
*/
     public static void main(String args) {
// デフォルトのTimeZoneを取得
         TimeZone defaultTimeZone = TimeZone.getDefault();

// 日本を指定してTimeZoneを取得
         TimeZone japanTimeZone = TimeZone.getTimeZone("JST");

// デフォルトと日本のTimeZoneを出力
         System.out.println(defaultTimeZone.getDisplayName());
         System.out.println(japanTimeZone.getDisplayName());
     }
}

 

 

実行結果

日本標準時
日本標準時 

 

当たり前ですが、日本で実行してるので、デフォルトで日本となってますね。

 

2つ目

Java

import java.util.TimeZone;
import java.util.Calendar;

/**
* TimeZoneを練習するクラス
*
*/
public class TimeZoneTest {
/**
* メインメソッド
* @param args
*/
    public static void main(String args) {
// 国際標準時を指定してTimeZoneを取得
        TimeZone utc = TimeZone.getTimeZone("UTC");

// Calendarを生成し、国際標準時を設定
        Calendar calendar = Calendar.getInstance();
        calendar.setTimeZone(utc);

// 国際標準時を表示
        System.out.println(utc.getDisplayName());
        System.out.println(calendar.get(calendar.YEAR) + "年"
            + (calendar.get(calendar.MONTH) + 1)+ "月"
            + calendar.get(calendar.DAY_OF_MONTH) + "日"
            + calendar.get(calendar.HOUR_OF_DAY) + "時"
            + calendar.get(calendar.MINUTE) + "分"
            + calendar.get(calendar.SECOND) + "秒");

// 日本時間を指定してTimeZoneを取得
        TimeZone jst = TimeZone.getTimeZone("JST");

// 日本時間を表示
       calendar.setTimeZone(jst);
       System.out.println(jst.getDisplayName());
       System.out.println(calendar.get(calendar.YEAR) + "年"
           + (calendar.get(calendar.MONTH) + 1) + "月"
           + calendar.get(calendar.DAY_OF_MONTH) + "日"
           + calendar.get(calendar.HOUR_OF_DAY) + "時"
           + calendar.get(calendar.MINUTE) + "分"
           + calendar.get(calendar.SECOND) + "秒");
     }

 

実行結果

協定世界時
2017年9月23日7時53分8秒
日本標準時
2017年9月23日16時53分8秒

 

今のところ日本内での開発しかやったことありませんが、国際的な開発になってくるとこういうことも気にしていかないといけないんですね(。 ・ω・))フムフム

 

参考にさせて頂いたサイト様

Javaの道:日付・時刻(4.TimeZoneクラス)

時間帯リスト