C# 根据生日获取年龄

C# 根据生日获取年龄

    根据生日计算出准确的年龄,不等于0时,返回的是岁,等于0时,返回的是天(以‘-’来区分)

public static string GetAgeByBirth(string Birthdate)
    {
        string ages = string.Empty;
        try
        {
            //年龄格式化
            DateTimeFormatInfo dtFormat = new DateTimeFormatInfo();
            dtFormat.ShortDatePattern = "yyyy-MM-dd";
            DateTime dt = Convert.ToDateTime(Birthdate, dtFormat);
            int age = DateTime.Now.Year - dt.Year;
            if (DateTime.Now.Month < dt.Month || (DateTime.Now.Month == dt.Month && DateTime.Now.Day < dt.Day)) age--;
            TimeSpan ts = DateTime.Now - dt;
            ages = age == 0 ? "-" + ts.Days : age.ToString();
        }
        catch(Exception ex)
        {
            BuildLogFile(ex.Message);
        }
        
        return ages;
    }
原文地址:https://www.cnblogs.com/ocean-wang/p/10979689.html