- 2009年2月 8日 14:29
- しらべる
昔のシステムのDBだと、年月日がカラムごとにNUMBERで入っていたり、年が和暦で入っていたりすることがあります。 そんなときにJava6の和暦カレンダー(JapaneseImperialCalendar)が便利です。
//元号コード、
int imperialCd = 4;
//和暦年
int year = 19;
//月
int month = 5;
//日
int day = 2;
//ロケールを和暦に設定
Locale.setDefault(new java.util.Locale("ja", "JP", "JP"));
//カレンダーを作成
Calendar cal = Calendar.getInstance();
//元号コードを設定(明治:1,大正:2,昭和:3,平成:4)
cal.set(Calendar.ERA, imperialCd);
//年月日を設定
cal.set(year, month-1, day);
//西暦、和暦でそれぞれ表示
DateFormat format = new SimpleDateFormat("GGGGyy年 MM dd日");
DateFormat format2 = new SimpleDateFormat("yyyy/MM/dd", Locale.JAPAN);
System.out.println(format.format(cal.getTime()));
System.out.println(format2.format(cal.getTime()));
結果
平成19年 5月 2日 2007/05/02
