• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:和暦→西暦(有効範囲を考慮))

和暦→西暦の変換で有効範囲を考慮した方法を教えてください

このQ&Aのポイント
  • 和暦(元号)と西暦の相互変換について、和暦→西暦の変換時に有効ではない和暦を指定するとエラーとなります。ComboBoxとTextBoxが使用されており、最終手段として各元号に有効な値を保持しといてエラーを回避する方法が考えられます。
  • VB2010(.NET2.0)のWinアプリで、和暦→西暦の変換時に有効ではない和暦を指定するとエラーが発生します。ComboBoxには「明治」「大正」「昭和」「平成」があり、TextBoxで2桁の数値を入力しますが、他の制限はありません。エラーを回避するためには、各元号に有効な値を保持する方法が考えられます。
  • 和暦(元号)と西暦の相互変換に問題があります。和暦→西暦の変換時には有効範囲を考慮する必要があります。ComboBoxには「明治」「大正」「昭和」「平成」があり、TextBoxで2桁の数値を入力します。エラーを回避するためには、各元号に有効な値を保持する方法が適しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

ComboBoxで選択された年号の元年12月31日を西暦年で求める+TextBoxに入力された数値 -1 で、良いのではないでしょうか? 例:「大正」「30」 ↓ 大正元年12月31日=1912/12/31→1912 1912+30-1=1941年

Rilakkuma_san
質問者

お礼

現在、開発PCがトラブル中なので 直り次第、ご意見参考にさせていただきます。 回答、ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • MARU4812
  • ベストアンサー率43% (196/452)
回答No.3

>個人的にエラー補足時にエラー処理や >ログ出力以外の事をやるのは気が引けるんですよね。。。。 DateTime.TryParseExact メソッドを使えばいいのでは。

Rilakkuma_san
質問者

お礼

現在、開発PCがトラブル中なので 直り次第、ご意見参考にさせていただきます。 回答、ありがとうございました。

すると、全ての回答が全文表示されます。
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.1

例外処理を使いましょう。 まず西暦→和暦変換を行い、それでエラーが発生したら捕捉して対応処理を行う、という処理の流れになります。 http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard12.htm

Rilakkuma_san
質問者

お礼

やっぱり例外処理しかないんでしょうか。 (思いついてるのは例外処理での対応でした) 個人的にエラー補足時にエラー処理や ログ出力以外の事をやるのは気が引けるんですよね。。。。 回答、ありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A