Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何在c#中检查当前时间是中午12点?_Asp.net_C# 4.0 - Fatal编程技术网

Asp.net 如何在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");

我需要使用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");
            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)勾选?