我如何通过datetimepicker计算年龄

时间:2010-02-10 14:46:41

标签: c#

  

可能重复:
  How do I calculate someone’s age

如何在c#中使用datetimepicker计算年龄?

2 个答案:

答案 0 :(得分:6)

严格来说,

TimeSpan age = DateTime.Now - dateTimePicker.Value;

然而,弄清楚某人的“年龄”只会稍微复杂一点。

int years = DateTime.Now.Year - dateTimePicker.Value.Year;

if(dateTimePicker.Value.AddYears(years) > DateTime.Now) years--;

因为年份的长度各不相同,所以你必须这样做,而不是依赖于代表特定时间的TimeSpan这样的结构(对于确定多少“月”之间的情况也是如此)两个日期,因为几个月的长度从28-31天不等。)

最后一行代码是为了解释今年尚未举办的人生日。

答案 1 :(得分:0)

假设DateTimePicker被称为dtpBirthday:

int age = DateTime.Now.Year - dtpBirthday.Value.Year - (DateTime.Now.DayOfYear < dtpBirthday.Value.DayOfYear ? 1 : 0);