現在日時を取得し表示形式を指定する(LocalDateTime クラス)
LocalDateTimeクラス
は現在日時を取得し表示形式を指定するクラスです。
タイムゾーンのない日付/時間を扱います。
DateTimeFormatterクラス
を使うと、取得した日時を指定した表示形式に整形することが出来ます。
①の処理ではDateTimeFormatterクラス
のofPatternメソッド
で表示形式を指定しています。
②の処理ではDateTimeFormatterクラス
のformatメソッド
で設定しています。
public class Sample {
public static void main(String[] args) {
// 現在日時を取得
LocalDateTime nowDate = LocalDateTime.now();
System.out.println(nowDate); //2020-12-20T13:32:48.293
// 表示形式を指定
DateTimeFormatter dtf1 =
DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss.SSS"); // ①
String formatNowDate = dtf1.format(nowDate); // ②
System.out.println(formatNowDate); // 2020/12/20 13:32:48.293
// 表示形式を指定
DateTimeFormatter dtf2 =
DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH時mm分ss秒 E曜日");
String formatNowDate = dtf2.format(nowDate);
System.out.println(formatNowDate); // 2020年12月20日 13時32分48秒 日曜日
// 表示形式を指定
DateTimeFormatter dtf3 =
DateTimeFormatter.ofPattern("yyyyMMddHHmm");
String formatNowDate = dtf3.format(nowDate);
System.out.println(formatNowDate); // 202012201332
}
}
現在日時を取得し表示形式を指定する(Date クラス)
Dateクラス
は Unix時間(1970年1月1日 0時0分0秒からの経過時間)をベースにしている、日付と時間を扱うクラスです。
SimpleDateFormatクラス
は取得した日時を指定した表示形式に整形することが可能です。
public class Test1 {
public static void main(String[] args) {
// 現在日時を取得
Date nowDate = new Date();
System.out.println(nowDate); //Sun Dec 20 13:56:23 JST 2020
// 表示形式を指定
SimpleDateFormat sdf1
= new SimpleDateFormat("yyyy/MM/dd HH:mm:ss.SSS");
String formatNowDate = sdf1.format(nowDate);
System.out.println(formatNowDate); // 2020/12/20 13:56:23.372
// 表示形式を指定
SimpleDateFormat sdf2
= new SimpleDateFormat("yyyy年MM月dd日 HH時mm分ss秒");
String formatNowDate = sdf2.format(nowDate);
System.out.println(formatNowDate); // 2020年12月20日 13時56分23秒
}
}