業務アプリを作っていると、和暦西暦混在でいろいろ変換したりする必要がありますが、以外に「明治1年1月1日とかってOKなの?」といった端っこチェックがどう動くかとか、暗記してないんですよね。というわけで……。
- JapaneseCalendar クラス(.NET Framework 2.0)
- http://msdn.microsoft.com/ja-jp/library/system.globalization.japanesecalendar(v=vs.80).aspx
なるほど、明治は9月8日からなのね……でも、これは.NET Framework 2.0、一応4.0もみてみようか……
- JapaneseCalendar クラス(.NET Framework 4.0)
- http://msdn.microsoft.com/ja-jp/library/system.globalization.japanesecalendar(v=vs.100).aspx
えー……1月1日から使えるとか!どういうことなの。
参考情報(2012/4/27更新)
別途「天皇陛下がいずれは亡くなられるとした場合、システム的に和暦を扱っている処理はどうすればいいんだ?」ということを調べていて、いくつか関連しそうな議論を見つけたのでメモしておきます。元号の取り扱いとその境界の取り扱いですね。
- メモリが "read" になることはできませんでした。/.NET Framework 2.0 JapaneseCalendarについて
- http://blog.livedoor.jp/memcpy/archives/17926288.html
- Sorting it all Out/Long live the Emperor
- http://blogs.msdn.com/b/michkap/archive/2006/05/14/597278.aspx