- - PR -
java1.6での和暦対応について質問(JapaneseImperialCalendar)
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2008-01-21 13:38
こんにちわ。
java1.6のJapaneseImperialCalendarクラス(和暦用クラス)について質問です。 今後、平成が終了して新たな元号になった時の対応はどのようにとる形になるのでしょうか? 恐らく最終的には正式なJREのverUpにて対応することになると思われるのですが、改元直後に公開されるとはあまり思えません。 また、システムによっては容易にverUpが行えないことも多々あると思われます。 なお、jre/lib/calendar.propertiesに改元に関する設定があるようで、これに設定を加えることで対応はできるように見えるのですが、日本語名の設定が見当たりません。 どのように対応するのが良いのでしょうか? -------------------------------------------------------- <calendars.properties元ファイル> calendar.japanese.eras: \ name=Meiji,abbr=M,since=-3218832000000; \ name=Taisho,abbr=T,since=-1812153600000; \ name=Showa,abbr=S,since=-1357603200000; \ name=Heisei,abbr=H,since=600220800000 <元ファイルでの出力結果> 今日:平成20-1-21 10年前:平成10-1-21 -------------------------------------------------------- <calendars.properties変更後ファイル> calendar.japanese.eras: \ name=Meiji,abbr=M,since=-3218832000000; \ name=Taisho,abbr=T,since=-1812153600000; \ name=Showa,abbr=S,since=-1357603200000; \ name=Heisei,abbr=H,since=600220800000; \ name=mirai,abbr=H,since=900220800000 <変更後ファイルでの出力結果> 今日:mirai11-1-21 10年前:平成10-1-21 | ||||
|
投稿日時: 2008-01-21 19:03
日本語名は sun.text.resources.FormatData_ja という
ListResourceBundleのサブクラスで定義されているようです。 ListResourceBundleなのでクラス内部にハードコーディングです。 これに追加するのはちょっと無理っぽいですね ![]()
| ||||
|
投稿日時: 2008-01-21 19:19
さっそくご返答ありがとうございます。
なるほど、ハードコーディングされてるのですね・・。 確かにそのようなコードがありました。 http://www.java2s.com/Open-Source/Java-Document/JDK-Modules-sun/text/sun/text/resources/FormatData_ja.java.htm 106行〜110行 これは運用中のシステムとかでは中々致命的な問題のような気もします。 和名の設定変更もできない限りはやはりDBや設定値で元号を持つほうがよろしいようですね。 早々に解決しまして助かりました。 ありがとうございます。 |
1