- 締切済み
西暦→和暦
avaで、西暦→和暦に変換するプログラムを組みたいのですが、 例えば、 2008/11/22 と入力したら、 平成20年11月22日 と表示されるようなプログラムを作りたいのですが、 (昭和と平成のみ対応) 教えて下さい…m(__)m
- みんなの回答 (3)
- 専門家の回答
みんなの回答
自分で実装するとしても、そんな驚くほど難しいもんでもないと思うが。うるう年なんて全く関係ない。ただ、「各年号の開始時間と調べたい時間を比較する」だけだ。 1.調べたい日時のタイムスタンプを得る。(Date#getTimeなど) 2.明治チェック 1867,11,31 0:00のタイムスタンプを調べ、これより後なら明治。 3.大正チェック 1912,6,29 0:00のタイムスタンプを調べ、これより後なら大正。 4.昭和チェック 1926,11,25 0:00のタイムスタンプを調べ、これより後なら昭和。 5.平成チェック 1989,0,7 0:00のタイムスタンプを調べ、これより後なら平成。 これを順にチェックしていけば、その日時がどの元号かわかるだろう。後は、調べる日時の西暦年から元号の元年の西暦数を引けば元号年が出てくる。
- ProKaseifu
- ベストアンサー率51% (98/192)
>自分で実装したいのですが、その場合それぞれの月が何日まであるのか、また閏年も考慮して場合わけするのですよね? 西暦和暦変換 java ↑で検索したサイトとか見たら分かりませんかね? JavaScriptとかのソース結構ひっかかりますけど、そのソースから Javaで書き直せばいいわけで。 ご自分で実装したいのですよね?
Java6なら、標準機能である。このへんかな。 http://allabout.co.jp/internet/java/closeup/CU20060121A/ それ以前だと、同様のものを自分で実装するしかないかな。要するに、和暦に切り替え年月日をすべてピックアップし、「この日より後はこの元号」というのをすべて計算するわけだな。
お礼
回答ありがとうございます。 自分で実装したいのですが、その場合それぞれの月が何日まであるのか、また閏年も考慮して場合わけするのですよね? ごめんなさい、全くの初心者です・・・よろしくお願いします