misc.log

日常茶飯事とお仕事と

.NETの和暦取り扱い範囲

業務アプリを作っていると、和暦西暦混在でいろいろ変換したりする必要がありますが、以外に「明治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