--- title: JSR-310の和暦漢字表示 tags: ["Java SE 8"] categories: ["Programming", "Java", "java", "time"] date: 2015-04-08T06:37:43Z updated: 2015-04-08T06:37:43Z --- メモ JSR-310の和暦、そのままprintすると「Japanese Heisei 27-04-08」な感じになっちゃう。 漢字で表示したいときは`DateTimeFormatter`を使う。 ``` java package perfectjava.entity; import java.time.chrono.JapaneseChronology; import java.time.chrono.JapaneseDate; import java.time.chrono.JapaneseEra; import java.time.format.DateTimeFormatter; import java.time.format.ResolverStyle; import java.util.Locale; public class Foo { public static void main(String[] args) { DateTimeFormatter formatter = DateTimeFormatter.ofPattern("Gy年MM月dd日") .withLocale(Locale.JAPANESE) .withResolverStyle(ResolverStyle.STRICT) .withChronology(JapaneseChronology.INSTANCE); JapaneseDate date = JapaneseDate.now(); System.out.println(date); // Japanese Heisei 27-04-08 System.out.println(date.format(formatter)); // 平成27年04月08日 JapaneseDate jjugCccDate = JapaneseDate.of(JapaneseEra.HEISEI, 27, 4, 11); System.out.println(jjugCccDate.format(formatter)); // 平成27年04月11日 } } ```