各位前辈,小弟现在有个需求是要根据两个日期型变量,计算中间间隔多少年——实际的情况是根据记录的时间和某个人的出生日期,计算输入记录时这个人有多少岁(保留整数)。小弟目前没有什么思路,不知道各位达人有什么好的解决方法没有。提前谢过!

解决方案 »

  1.   

    DateTime dt1 = Convert.ToDateTime("2006-01-01");            TimeSpan ts = (TimeSpan)(DateTime.Now - dt1);
                Response.Write(ts.Days / 360);
      

  2.   

    DateTime dt1 = Convert.ToDateTime("2002-01-01");
                Response.Write(DateTime.Now.Year - dt1.Year);
      

  3.   

    DateTime dt1 = new DateTime(1982, 1, 15);
    DateTime dt2 = DateTime.Today;
    int age = dt2.Year - dt1.Year;
    if (dt1.Month * 31 + dt1.Day < dt2.Month * 31 + dt2.Day)
    {
    age++;
    }
      

  4.   

    cpp2017(慕白兄),谢谢您的帮助,不过您提供的第一种思路可能存在闰年的情况(即该年可能有366天),第二种思路可能会存在计算结果偏大的情况,比如(2006-3-1) - (1976-4-1) = 30,但是实际上2006年3月1日该人员还未满30 -_-b,不过谢谢您的指点,最后我采用了Snowdust(雪尘) 的方法.谢谢2位了
      

  5.   

    Click the link to solve your problem.Good luck!