CSMemo023

日付の簡易Validation

不正な日付文字列(例えば2011/02/31とか)や、
日付文字列じゃない文字列(ABCとか)について
「日付として扱えないぞ」ということを判定するには
DateTimeクラスのTryParseがtrueを返すかfalseを返すかで
判断できるらしい。

Javaなんかだと 2011/02/31 を勝手に「2011/03/02」などと
解釈してしまうモードもある(setLenientで設定、厳密判定をOFFにした場合)が、
こっちは一律厳密モードってことかな。

string str="2007/10/10";
DateTime dt = new DateTime();
if (DateTime.TryParse(str, out dt))
{
    // Trueな処理
    MessageBox.Show("日付です。");
}
else
{
    // Falseな処理
    MessageBox.Show("日付じゃないです。");
}

TryParseの第二引き数はVB.NETだとNothingでもいけるけど、
C#.NETの場合はnullにできないらしいね。
どうしても値を格納できる変数が要るみたい。
最終更新:2011年04月29日 17:09