vs2010测试通过,主要思想是由出生日期和当前日期,两个日期计算出年龄(岁、月、天)
using System; using System.Collections.Generic; using System.Text; namespace PublicClass { public static class CalculationDate { /// <summary> /// 由两个日期计算出年龄(岁、月、天) /// </summary> public static void calculationDate(DateTime beginDateTime, DateTime endDateTime) { if (beginDateTime > endDateTime) throw new Exception("开始时间应小于或等与结束时间!"); /*计算出生日期到当前日期总月数*/ int Months = endDateTime.Month - beginDateTime.Month + 12 * (endDateTime.Year - beginDateTime.Year); /*出生日期加总月数后,如果大于当前日期则减一个月*/ int totalMonth = (beginDateTime.AddMonths(Months) > endDateTime) ? Months - 1 : Months; /*计算整年*/ int fullYear = totalMonth / 12; /*计算整月*/ int fullMonth = totalMonth % 12; /*计算天数*/ DateTime changeDate = beginDateTime.AddMonths(totalMonth); double days = (endDateTime - changeDate).TotalDays; } } }
再简单一些:
public int CalculateAgeCorrect(DateTime birthDate, DateTime now) { int age = now.Year - birthDate.Year; if (now.Month < birthDate.Month || (now.Month == birthDate.Month && now.Day < birthDate.Day)) age--; return age; }
下面我们来看看常规方法:
方法1:
string m_Str = "1984-04-04"; int m_Y1 = DateTime.Parse(m_Str).Year; int m_Y2 = DateTime.Now.Year; int m_Age = m_Y2 - m_Y1; Response.Write(m_Age);
方法2:
如果你将日期格式化为yyyymmdd,并且从当前日子减去生日,最后去除4个数字,就得到年龄了:)
我相信这样的方法可以用任何语言实现:
20080814-19800703=280111
去除最后4位 = 28.
int now =int.Parse(DateTime.Today.ToString("yyyyMMdd")); int dob =int.Parse(dateDOB.ToString("yyyyMMdd")); string dif =(now - dob).ToString(); string age ="0"; if(dif.Length>4) age = dif.Substring(0, dif.Length-4);
方法3:
DateTime now =DateTime.Today; int age = now.Year- bday.Year; if(bday > now.AddYears(-age)) age--;
以上所述就是本文的全部内容了,希望能对大家学习C#有所帮助。
本文向大家介绍JavaScript简单计算人的年龄示例,包括了JavaScript简单计算人的年龄示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JavaScript简单计算人的年龄的方法。分享给大家供大家参考,具体如下: 注意Date()类型转换,否则会出现NaN的错误 birth为yyyy-mm-dd的日期格式 完整示例代码如下: 运行结果为:29 PS:这里再为大家推荐几款时间及
问题内容: 考虑到他们的DOB格式为dd / mm / yyyy,我正在寻找一种计算人的年龄的方法。 我一直在使用以下功能,该功能在几个月内都可以正常工作,直到某种故障导致while循环永远不会结束并且使整个站点陷入瘫痪。由于每天有近100,000个DOB多次通过此功能,因此很难确定造成此问题的原因。 有人有更可靠的年龄计算方法吗? 编辑:此函数的某些时间似乎可以正常工作,但对于14年9月14日的
本文向大家介绍js+html实现周岁年龄计算器,包括了js+html实现周岁年龄计算器的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了js+html实现周岁年龄计算器的具体代码,供大家参考,具体内容如下 输入界面展示: 输出结果展示: 实现代码: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
本文向大家介绍C语言简单实现计算字符个数的方法,包括了C语言简单实现计算字符个数的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C语言简单实现计算字符个数的方法。分享给大家供大家参考。具体如下: char_counting.c如下: 编译和使用下: 一种通常的调用方式: 通过linux管道来传递字符: 希望本文所述对大家的C语言程序设计有所帮助。
本文向大家介绍Java中使用LocalDate根据日期来计算年龄的实现方法,包括了Java中使用LocalDate根据日期来计算年龄的实现方法的使用技巧和注意事项,需要的朋友参考一下 Java中和日期直接相关的类有很多,平时最常用到的就是java.util package下面的Date和Calendar,需要用到格式的时候还会用到java.text.SimpleDateFormat 首先吐槽一下,
问题内容: 我想编写一种从出生日期开始计算年龄的方法,逻辑是否正确以及如何在android Java中编写它: 问题答案: 这是我对问题的解决方案: 我使用DatePicker获取此处所需的输入值。此方法与日期选择器一起专门用于获取用户的DoB并计算其年龄。根据您的特定实现,可以进行少许修改以允许用户DoB的String输入。String的返回类型是用于更新TextView的,可以稍作修改以允许类