减去两个日期时间

时间:2012-05-18 16:37:04

标签: c# datetime

我在winform中使用以下代码来减去两个日期时间。这些是完整的日期时间,包括日期,月份和年份。我想知道如何只用日期和月份减去两个日期时间。例如减去5/12和6/12而没有任何一年。

        DateTime date1 = new DateTime(byear, bmonth, bday, 0, 0, 0);
    DateTime datenow =  DateTime.Now;
TimeSpan timeSpan = datenow - date1;

请给我一些代码,以便我可以用日期和月份减去两个日期时间。

提前致谢

2 个答案:

答案 0 :(得分:2)

试试这个:

int year = DateTime.Now.Year;
DateTime dt1 = new DateTime(year, month1 , day1);
DateTime dt2 = new DateTime(year, month2,  day2);
int days = (int) Math.Round((dt1 - dt2).TotalDays);

答案 1 :(得分:0)

您可以使用某些默认年份,例如datetime.now,并按正常方式进行减法。 虽然2012年是闰年,但这对于非闰年来说无效。

 DateTime dt1= new DateTime(DateTime.Now.Year, month1, day1);
 DateTime dt2= new DateTime(DateTime.Now.Year, month2, day2);
 TimeSpan t= dt1 - dt2;