如何查找当前时间是否在c#中的时间范围内

本文关键字:时间 是否 范围内 何查找 查找 | 更新日期: 2023-09-27 18:00:00

我是c#的新手,我使用的是windows窗体。

任何人都知道我如何才能找到当前时间是否在c#中的时间范围内。

例如:我想检查当前时间是否在凌晨12点到4点之间。

我尝试了以下代码,但当当前时间是下午6点时,它给了我真实的陈述,这是不正确的:

 if (DateTime.Now >= DateTime.Today.AddHours(0) && 
     DateTime.Now <= DateTime.Today.AddHours(4))
 {
     MessageBox.Show("time is between 12am and 4am");
 }

请帮帮我。谢谢

如何查找当前时间是否在c#中的时间范围内

  TimeSpan start = new TimeSpan(00, 0, 0); //12  o'clock am
  TimeSpan end = new TimeSpan(04, 0, 0); //4 o'clock am
  TimeSpan now = DateTime.Now.TimeOfDay;
  if ((now > start) && (now < end))
  {
     MessageBox.Show("time is between 12am and 4am");
   }
if(DateTime.Now.Hour >= 0 & DateTime.Now.Hour < 4)

刚刚测试的

Debug.WriteLine(DateTime.Now.Hour);
if(DateTime.Now.Hour >= 0 & DateTime.Now.Hour < 4)
    Debug.WriteLine("in");
else
    Debug.WriteLine("out");

DateTime.Compare获取两个日期时间并进行比较。如果第一个在第二个之后或之后,则返回1;如果它早于第二个,则返回-1。否则返回0

if (DateTime.Compare(DateTime.Now, DateTime.Today.AddHours(0)) > 0  && DateTime.Compare(DateTime.Now, DateTime.Today.AddHours(4)) < 0)
{
    MessageBox.Show("time is between 12am and 4am");
}