Androidに和暦を扱えるCalendarは存在しますか?
OracleのJDK6実装では、
Locale locale = new Locale("ja", "JP", "JP"); // ja_JP_JP
のロケールを利用することで和暦を扱うことができますが、AndroidではGregorianCalendar
が返却される、という実装の違いがあります。
これはAndroidにはJapaneseImperialCalendar
が存在しない、ということなんでしょうか?
UPDATE: Android N にてICU4J Android フレームワーク APIが提供されました。
android.icu.util.Calendar calendar = new android.icu.util.JapaneseCalendar();
android.icu.text.DateFormat df = new android.icu.text.SimpleDateFormat("Gy年M月d日", new android.icu.text.DateFormatSymbols(calendar, Locale.JAPANESE));
df.setCalendar(calendar);
Log.d("Calendar", df.format(new Date())); // 平成28年4月30日
Android標準で和暦を扱うことができるようになりました(ただし Android N 以降のみ)。