質問を投稿
C# 時刻の比較について
C#初心者です。
C#でソフトを作り始めたのですが、時刻の比較が上手くいっていないためかイマイチ動きがよくありません。
beforetime(前)とaftertime(後)という2点の時刻を設定し、その前後内もしくは同時刻内にfiletimeがあればリストに追加するという想定です。
foreach (string s in files)
{
・・・・
if((aftertime.CompareTo(filetime)==1)||(aftertime.CompareTo(filetime)==0))
{
if ((beforetime.CompareTo(filetime) == -1)||(beforetime.CompareTo(filetime)==0))
{
timefiles.Add(s);//期間内であればリストへ追加
}
}
}
上記のプログラムにおいて、
前(beforetime)→ 20:59:00 後(aftertime)→ 21:00:00
と設定し、
filetimeが20:59:00 , 21:00:00の二つをこのプログラムへ渡すと、どちらもリストへ追加するよう動く想定ですが
filetimeが21:00:00の時のみリストへ追加されます。
ドツボにはまっている、もしくは関数の使い方を間違っているのでしょうか。
ご教授いただければ幸いです。
よろしくお願いいたします。
C#初心者です。 C#でソフトを作り始めたのですが、時刻の比較が上手くいっていないためかイマイチ動きがよくありません。 beforetime(前)とaftertime(後)という2点の時刻を設定し、その前後内もしくは同時刻内にfiletimeがあればリストに追加するという想定です。 ``` foreach (string s in files) { ・・・・ if((aftertime.CompareTo(filetime)==1)||(aftertime.CompareTo(filetime)==0)) { if ((beforetime.CompareTo(filetime) == -1)||(beforetime.CompareTo(filetime)==0)) { timefiles.Add(s);//期間内であればリストへ追加 } } } ``` 上記のプログラムにおいて、 前(beforetime)→ 20:59:00 後(aftertime)→ 21:00:00 と設定し、 filetimeが20:59:00 , 21:00:00の二つをこのプログラムへ渡すと、どちらもリストへ追加するよう動く想定ですが filetimeが21:00:00の時のみリストへ追加されます。 ドツボにはまっている、もしくは関数の使い方を間違っているのでしょうか。 ご教授いただければ幸いです。 よろしくお願いいたします。