---
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日
	}

}
```
