网管联盟:c# 如何实现跨天时间比较早晚

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/28 02:01:21
c# WINFORM

两个时间变量(不要日期部分)
CurrentTime(当前时间:今天15:00)
StartTime(开始时间:明天6:00)

现在起动一个定时器检测这两个时间变量,当两个变量相同时(也就是CurrentTime变量=明天6:00时)运行一个任务!

如何实现!!
我的定时器间隔是1秒,万一程序忙跳过了怎么办,
我把StartTime(开始时间:明天6:00)改成StartTime(开始时间:明天6:00-6:05)
怎么实现

int cHour = DateTime.Now.Hour;
int cMinute = DateTime.Now.Minute;
int sHour = StartTime.Hour;
int sMinute = StartTime.Minute;
if (cHour == sHour && (cMinute > sMinute - 1 && cMinute < sMinute + 5))
{
//先停止记数
this.tmTaskStart.Stop();
//起动任务

}

在Timer的Ticks里写上:
string CurrentTime = DateTime.Now.ToShortTimeString ();
string StartTime = "6:00";
if(CurrentTime == StartTime)
{
//here,do what you want
}

DateTime CurrentTime = DateTime.Now;
int n=CurrentTime.Hour;
if(n == 6)
{
//here,do what you want
}

其实最简单的办法是用操作系统的计划任务,何必非要自己写定时控制呢.