C#根據出生日期和當前日期計算精確年齡
C#根據出生日期和當前日期計算精確年齡
public static string GetAge(DateTime dtBirthday, DateTime dtNow) { string strAge = string.Empty; // 年齡的字符串表示 int intYear = 0; // 歲 int intMonth = 0; // 月 int intDay = 0; // 天// 如果沒有設定出生日期, 返回空 if (DataType.DateTime_IsNull(ref dtBirthday) == true) { return string.Empty; } // 計算天數 intDay = dtNow.Day - dtBirthday.Day; if (intDay < 0) { dtNow = dtNow.AddMonths(-1); intDay += DateTime.DaysInMonth(dtNow.Year, dtNow.Month); } // 計算月數 intMonth = dtNow.Month - dtBirthday.Month; if (intMonth < 0) { intMonth += 12; dtNow = dtNow.AddYears(-1); } // 計算年數 intYear = dtNow.Year - dtBirthday.Year; // 格式化年齡輸出 if (intYear >= 1) // 年份輸出 { strAge = intYear.ToString() + "歲"; } if (intMonth > 0 && intYear <= 5) // 五歲以下可以輸出月數 { strAge += intMonth.ToString() + "月"; } if (intDay >= 0 && intYear < 1) // 一歲以下可以輸出天數 { if (strAge.Length == 0 || intDay > 0) { strAge += intDay.ToString() + "日"; } } return strAge; }</pre>
本文由用戶 b5cw 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!