C# DateTime 比较两个时间能否处于12点与13点之间

.Net技术 码拜 9年前 (2016-03-04) 964次浏览
DateTime a=Convert.ToDateTime(2016/5/3 9:03:30);
判断a的时间能否在9点前,
DateTime b=Convert.ToDateTime(2016/5/4 12:08:20);
判断b的时间能否处于12点与13点之间。
解决方案

在C#中,要转换字符串为DateTime对象,你需要使用正确的格式,并且字符串需要用引号包围起来。你提供的代码片段尝试使用除法运算符(/)来构建日期时间字符串,这是不正确的。此外,Convert.ToDateTime方法需要一个可以解析为DateTime的字符串。

首先,我们来修复代码,将字符串转换为DateTime对象,然后判断时间是否在特定范围内。

// 正确的字符串表示形式,并且需要用引号包围

string dateStringA = “2016/5/3 9:03:30”;

DateTime a = Convert.ToDateTime(dateStringA);

// 判断a的时间是否在9点前

if (a.Hour < 9)

{

Console.WriteLine(“时间a在9点前。”);

}

else

{

Console.WriteLine(“时间a不在9点前。”);

}

string dateStringB = “2016/5/4 12:08:20”;

DateTime b = Convert.ToDateTime(dateStringB);

// 判断b的时间是否处于12点与13点之间

if (b.Hour >= 12 && b.Hour < 13)

{

Console.WriteLine(“时间b处于12点与13点之间。”);

}

else

{

Console.WriteLine(“时间b不在12点与13点之间。”);

}

上述代码首先定义了两个字符串dateStringAdateStringB,它们分别表示日期和时间。然后使用Convert.ToDateTime方法将这些字符串转换为DateTime对象ab

接下来,通过检查abHour属性,我们可以确定它们是否满足特定的时间条件。对于a,我们检查小时数是否小于9;对于b,我们检查小时数是否在12(包含)和13(不包含)之间。

请注意,DateTime对象的Hour属性表示的是24小时制的小时数,范围从0到23。在比较时间时,你不需要考虑分钟或秒,因为Hour属性已经足够用于确定小时范围。如果需要更精确的比较(例如,考虑分钟和秒),那么你需要包含这些属性在比较逻辑中。


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明C# DateTime 比较两个时间能否处于12点与13点之间
喜欢 (0)
[1034331897@qq.com]
分享 (0)