C# 时间对比
private void noticeTimer_Tick(object sender, EventArgs e)
{
DateTime noticeTimer = DateTime.Now;
DateTime time = Convert.ToDateTime("2013-11-19 15:03:00.000");
if(DateTime.Compare(noticeTimer,time)==0)
{
//TODO
}
}
如上一个timer,时间间隔为1000ms,为什么当即刻时间到2013-11-19 15:03:00的时候却不执行if里的TODO?
timer已经启动。
------解决方案--------------------if(DateTime.Compare(noticeTimer,time)
>=0)
------解决方案--------------------因为.Net中的时间计时周期单位是Tick
100ns(钠秒),即一千万分之一秒。 1 毫秒内有 10,000 个Tick
http://msdn.microsoft.com/zh-cn/library/system.datetime(VS.80).aspx
现在你知道那个等号走进去的机率了吗?