我想在当前时间添加小时或分钟

时间:2009-05-23 21:53:26

标签: c# datetime

我希望将时间增加到当前时间。

例如,我有问题的时间和完成它们的预期时间 我该如何添加?

 (DateTime.Now.ToShortDateString()  +.......)

4 个答案:

答案 0 :(得分:55)

您可以使用其他变量

DateTime otherDate = DateTime.Now.AddMinutes(25);
DateTime tomorrow = DateTime.Now.AddHours(25);

答案 1 :(得分:17)

您可以使用TimeSpan参数在DateTime上使用运算符+-+=-=

DateTime myDateTime = DateTime.Parse("24 May 2009 02:19:00");

myDateTime = myDateTime + new TimeSpan(1, 1, 1);
myDateTime = myDateTime - new TimeSpan(1, 1, 1);
myDateTime += new TimeSpan(1, 1, 1);
myDateTime -= new TimeSpan(1, 1, 1);

此外,您可以使用一组“添加”方法

myDateTime = myDateTime.AddYears(1);                
myDateTime = myDateTime.AddMonths(1);              
myDateTime = myDateTime.AddDays(1);             
myDateTime = myDateTime.AddHours(1);               
myDateTime = myDateTime.AddMinutes(1);            
myDateTime = myDateTime.AddSeconds(1);           
myDateTime = myDateTime.AddMilliseconds(1);       
myDateTime = myDateTime.AddTicks(1);     
myDateTime = myDateTime.Add(new TimeSpan(1, 1, 1)); 

有关更多DateTime操作的概述,请参阅THIS

答案 2 :(得分:5)

您还可以将TimeSpan添加到DateTime,如:

date + TimeSpan.FromHours(8);

答案 3 :(得分:1)

请注意,您可以添加-(减号)以向后查找分钟数

DateTime begin = new DateTime();
begin = DateTime.ParseExact("21:00:00", "H:m:s", null);

if (DateTime.Now < begin.AddMinutes(-15))
{
    //if time is before 19:45:00 show message etc...
}

前进时间

DateTime end = new DateTime();
end = DateTime.ParseExact("22:00:00", "H:m:s", null);


if (DateTime.Now > end.AddMinutes(15))
{
    //if time is greater than 22:15:00 do whatever you want
}