【Java】日付を文字列にフォーマット変換する方法
この記事ではJavaで日付を文字列にフォーマット変換する方法を解説します。
日付から文字列にフォーマット変換するには、String.formatを使用して変換すればよいです。
String.format(“%1$tY%1$tm%1$td”, date型変数);
また、スラッシュ編集「/」やハイフン編集「-」を行うには変換のフォーマットに付け足すのみでOKです。
// YYYYMMDDへ編集 String.format("%1$tY%1$tm%1$td", date); // スラッシュ編集:YYYY/MM/DD String.format("%1$tY/%1$tm/%1$td", date); // // ハイフン編集:YYYY-MM-DD String.format("%1$tY-%1$tm-%1$td", date);
和暦への編集は、和暦へのフォーマットを用意してあげる必要があります。
// 和暦編集:令和YY年MM月DD日 Locale locale = new Locale("ja", "JP", "JP"); Calendar calendar = Calendar.getInstance(locale); DateFormat 和暦フォーマット = new SimpleDateFormat("GGGGy年M月d日", locale); 和暦フォーマット.format(date);
上記のまとめとして、データ型と、引数を受け取ることで日付を文字列にフォーマット変換するメソッドです。
引数に応じて指定の文字列フォーマットに変換します。
public static String 現在時刻から文字列日付(Date date, int i) { // スラッシュ編集:YYYY/MM/DD if (i == 1) { return String.format("%1$tY/%1$tm/%1$td", date); // ハイフン編集:YYYY-MM-DD } else if (i == 2) { return String.format("%1$tY-%1$tm-%1$td", date); // 和暦編集:令和YY年MM月DD日 } else if (i == 3) { Locale locale = new Locale("ja", "JP", "JP"); Calendar calendar = Calendar.getInstance(locale); DateFormat 和暦フォーマット = new SimpleDateFormat("GGGGy年M月d日", locale); return 和暦フォーマット.format(date); // YYYYMMDDへ編集 } else if (i == 4) { return String.format("%1$tY%1$tm%1$td", date); } return ""; } // 〇実行結果 //引数が1の場合 //変換前 Wed Oct 23 07:19:57 JST 2024 //変換後 2024/10/23 //引数が2の場合 //変換前 Wed Oct 23 07:21:06 JST 2024 //変換後 2024-10-23 //引数が3の場合 //変換前 Wed Oct 23 07:21:29 JST 2024 //変換後 令和6年10月23日 //引数が4の場合 //変換前 Wed Oct 23 07:21:49 JST 2024 //変換後 20241023
Javaの記事の一覧はJava にまとめてあります