2016-01-06 75 views
1

如何计算日期(以日期时间格式)是6个月后还是不是从我的BirthDate(以日期时间格式)?如何计算如果日期是6个月后出生日期在C#

+0

你是指生日还是生日? (即,你想知道某个特定日期是否恰好在出生后6个月,或者是在任何生日之后的6个月?) –

+0

请重新阅读您的问题,但真的不清楚问题和预期是什么。 –

回答

1

输入你的出生日期,计算你的下一个生日和比较的日期,

 var born = new DateTime(1900, 02, 01); 
     var checkdate = DateTime.Now; 


     var nextBirthday = new DateTime(DateTime.Now.Year, born.Month, born.Day); 
     if (nextBirthday < DateTime.Now) 
     { 
      nextBirthday = new DateTime(DateTime.Now.Year + 1, born.Month, born.Day); 
     } 

     if (checkdate.AddMonths(6) < nextBirthday) 
     { 
      Console.WriteLine("date is 6 months later then birthday"); 
     } 
     else 
     { 
      Console.WriteLine("wait for it"); 
     } 
2

你应该使用DateTime.AddMonths

DateTime dt; 
DateTime birthDate; 

if (dt <= birthDate.AddMonths(6)) 
{ 
} 
1
DateTime birthDate=new DateTime(year,month,day); 
DateTime dateToCompare = new DateTime(year, month, day); 

if(dateToCompare >= birthdate.AddMonths(6)) 
{ 
    //DoSomething 
} 
0

你可以使用Subtract方法calculte日期之间的差值,并计算如何米任何几个月里,你有这些日期间,样品:

DateTime birthDay = /* some date */; 
DateTime someDate = /* some date */; 

var months = someDate.Subtract(birthDay).Days/(365.25/12); 

这个答案提供了日期的好帮手: https://stackoverflow.com/a/33287670/316799

相关问题