トラブルシューティング「無効なDateTime」エラーの文字列から日付の変換
文字列をDateTimeオブジェクトに変換すると、「無効なDateTime」エラーが発生する場合があります。特に「文字列は有効なDateTimeとして認識されませんでした」。 これは通常、特定の日付形式を定義する能力がないDateTime.Parse
を使用するときに発生します。
を使用することです。この方法を使用すると、予想される日付形式を明示的に指定できます。たとえば、文字列が「dd/mm/yyyy」形式である場合:DateTime.ParseExact
<code class="language-csharp">this.Text = "22/11/2009"; DateTime date = DateTime.ParseExact(this.Text, "dd/MM/yyyy", null); </code>
引数は、日付のフォーマットにシステムのデフォルトの文化設定を使用します。 必要に応じて、これを特定の文化に置き換えることができます。
null
vs. Parse
ParseExact
Parse
。になります
FormatException
ParseExact
と入力検証の両方を使用することは効果的ですが、入力検証の優先順位付けが重要です。 マスクされたテキストボックスのような手法を使用すると、正しくフォーマットされた文字列のみが変換機能に渡され、エラーが発生する前にエラーを防ぎ、アプリケーションの信頼性が向上することが保証されます。 この積極的なアプローチは、エラー処理に依存するよりも優れています。
以上が文字列から日付時刻への変換中に発生する「文字列が有効な日付時刻として認識されませんでした」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。