Asp.net 如何在c#中检查当前时间是中午12点?
我需要使用c#检查当前时间是中午12点,并使用计时器滴答事件来执行代码Asp.net 如何在c#中检查当前时间是中午12点?,asp.net,c#-4.0,Asp.net,C# 4.0,我需要使用c#检查当前时间是中午12点,并使用计时器滴答事件来执行代码 int secs = System.DateTime.Now.Second; int hours = System.DateTime.Now.Hour; int minutes = System.DateTime.Now.Minute; string AmPm = DateTime.Now.ToString("tt");
int secs = System.DateTime.Now.Second;
int hours = System.DateTime.Now.Hour;
int minutes = System.DateTime.Now.Minute;
string AmPm = DateTime.Now.ToString("tt");
if (Convert.ToInt32("12") == hours && Convert.ToInt32("0") == minutes && Convert.ToInt32("0") == secs && AmPm.ToUpper().Trim() == "PM")
{
}
else
{}
您应该能够做到:
var is_noon = (
DateTime.Now.Hour == 12 &&
DateTime.Now.Minute == 0 &&
DateTime.Now.Second == 0
);
无需将字符串转换为整数,您无论如何都在使用文本值
然而,正如Hans Kesting所指出的,根据您使用的
计时器,可能会出现不准确的情况,因此您可能需要一些宽大处理,就个人而言,我会停止检查几秒钟。您应该能够做到:
var is_noon = (
DateTime.Now.Hour == 12 &&
DateTime.Now.Minute == 0 &&
DateTime.Now.Second == 0
);
无需将字符串转换为整数,您无论如何都在使用文本值
然而,正如汉斯·凯斯汀所指出的,根据你使用的计时器,可能会出现不准确的情况,因此你可能需要宽大处理,就我个人而言,我会停止检查秒数。1)小时是24小时制的,所以午夜=0,中午=12;2) 为什么将.Convert.ToInt32(“12”)
而不是普通的12
?下一个问题:您确定在这一秒(12:00:00-12:00:01)内有一个计时器(不是0,不是2)滴答声吗?1)小时是24小时格式的,所以午夜=0,中午=12;2) 为什么将.Convert.ToInt32(“12”)
而不是普通的12
?下一个问题:您确定在这一秒(12:00:00-12:00:01)内正好有一个计时器(不是0,不是2)勾选?