前置きはこれくらいにしてさっそく
// DateTime型の日付のFrom-Toチェック
if (date1 < date2)
{
Console.WriteLine("date1はdate2より古い");
}
else if(date1 == date2)
{
Console.WriteLine("date1とdate2は同じ");
}
else if(date1 > date2)
{
Console.WriteLine("date1はdate2より新しい");
}
なんのひねりもなく比較演算子(==, !=, >, >=, <, <=)を使えば良い。
ただ、日付項目を都合よくDateTime型で保持している画面は見たことがない。
全てがString型だ。
ここで問題が発生する。
String型は比較演算子を使えない!!
使おうとするとコンパイラさんが「演算子はString型のオペランドに適用することはできません。」って怒られる。
そこで以下のようにCompareToメソッドを使う。
// String型の日付のFrom-Toチェック
switch (dateStr1.CompareTo(dateStr2))
{
case -1:
Console.WriteLine("dateStr1はdateStr2より古い");
break;
case 0:
Console.WriteLine("dateStr1とdateStr2は同じ");
break;
case 1:
Console.WriteLine("dateStr1はdateStr2より新しい");
break;
}
以上
0 件のコメント :
コメントを投稿