Как рассчитать чей-то возраст на основе дня рождения типа DateTime?
Это странный способ сделать datetime-operation это, но если вы форматируете dotnet дату в yyyymmdd
и вычитаете дату datetime-manipulation рождения из текущей даты, то visual-c# отбрасываете последние 4 c# цифры, у вас есть возраст visual-c# :)
Я не знаю C#, но думаю, что datetime это будет работать на любом datetime языке.
20080814 - 19800703 = 280111
Отбросьте последние visual-c# 4 цифры = 28
.
Код C#:
int now = int.Parse(DateTime.Now.ToString("yyyyMMdd"));
int dob = int.Parse(dateOfBirth.ToString("yyyyMMdd"));
int age = (now - dob) / 10000;
Или, как c#.net вариант, без преобразования .net-framework всех типов в виде метода datetime-manipulation расширения. Проверка ошибок .net-framework опущена:
public static Int32 GetAge(this DateTime dateOfBirth)
{
var today = DateTime.Today;
var a = (today.Year * 100 + today.Month) * 100 + today.Day;
var b = (dateOfBirth.Year * 100 + dateOfBirth.Month) * 100 + dateOfBirth.Day;
return (a - b) / 10000;
}
c#
.net
datetime
Как рассчитать чей-то возраст на основе дня рождения типа DateTime?
Мы используем файлы cookies для улучшения работы сайта. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies. Чтобы ознакомиться с нашими Положениями о конфиденциальности и об использовании файлов cookie, нажмите здесь.