C#精确计算年龄的方法分析

本文实例讲述了C#精确计算年龄的方法。分享给大家供大家参考。具体如下:

该源码在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;
        }
    }
}

希望本文所述对大家的C#程序设计有所帮助。

(0)

相关推荐

  • C#统计字符串里中文汉字个数的方法

    如何从C#获取字符串中汉字的个数?C#中使用正则表达式来从字符串中判断出汉字,然后计数,从而得到字符串中的汉字个数. 先看这段代码: 复制代码 代码如下: //首先引用命名空间 using System.Text.RegularExpressions; //定义一个函数,返回字符串中的汉字个数 public static int GetHanNumFromString(string str) {     int count = 0;     Regex regex = new Regex(@"^

  • c#英文单词分类统计示例分享

    复制代码 代码如下: using System;using System.Linq;namespace ConsoleApplication1{    /// <summary>    /// 给出一段英文,分类统计(如:长度为4的单词有2个:time,well)    /// </summary>    class Program    {        static void Main(string[] args)        {            string sour

  • C#统计字符串中数字个数的方法

    本文实例讲述了C#统计字符串中数字个数的方法.分享给大家供大家参考.具体实现方法如下: // DigitCounter.cs // 编译时使用:/target:library using System; // 声明与 Factorial.cs 中的命名空间相同的命名空间.这样仅允许将 // 类型添加到同一个命名空间中. namespace Functions { public class DigitCount { // NumberOfDigits 静态方法计算 // 传递的字符串中数字字符的数

  • C#计算文件MD5校验的方法

    本文实例讲述了C#计算文件MD5校验的方法.分享给大家供大家参考.具体分析如下: C#计算文件的MD5校验,从互联网上下载一个文件,可以使用下面的代码对文件进行MD5校验,看看生成的MD5编码是否和网站提供的一致,如果不一致则表示文件被修改过了,要慎重. protected string GetMD5HashFromFile(string fileName) { FileStream file = new FileStream(fileName,FileMode.Open); MD5 md5 =

  • C#计算矩阵的秩实例分析

    本文实例讲述了C#计算矩阵的秩的方法.分享给大家供大家参考.具体如下: 1.代码思路 计算矩阵的秩,即把矩阵进行行初等变换,得出的行最简矩阵的非零行数.过程如下 1)将矩阵各行按第一个非零元素出现的位置升序排列(Operation1函数) 2)查看矩阵是否为行最简矩阵(isFinished函数),是则到第6步,不是则到第3步 3)如果有两行第一个非零元素出现的位置相同,则做消法变换,让下面行的第一个非零元素位置后移(Operation2函数) 4)将矩阵各行按第一个非零元素出现的位置升序排列(O

  • C#实现统计字数功能的方法

    本文实例讲述了C#实现统计字数功能的方法.分享给大家供大家参考.具体如下: 1.程序效果示例如下: 2.程序控件用法: 3.程序代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tas

  • C#实现TCP连接信息统计的方法

    本文实例讲述了C#实现TCP连接信息统计的方法.分享给大家供大家参考.具体实现方法如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Net.Netw

  • C#精确计算年龄的方法分析

    本文实例讲述了C#精确计算年龄的方法.分享给大家供大家参考.具体如下: 该源码在vs2010测试通过 复制代码 代码如下: using System; using System.Collections.Generic; using System.Text; namespace PublicClass {     public static class CalculationDate     {         /// <summary>         /// 由两个日期计算出年龄(岁.月.天

  • php根据生日计算年龄的方法

    本文实例讲述了php根据生日计算年龄的方法.分享给大家供大家参考.具体如下: <?php function birthday($birthday){ $age = strtotime($birthday); if($age === false){ return false; } list($y1,$m1,$d1) = explode("-",date("Y-m-d",$age)); $now = strtotime("now"); list

  • php简单计算年龄的方法(周岁与虚岁)

    本文实例讲述了php简单计算年龄的方法.分享给大家供大家参考,具体如下: /** * $date是时间戳 * $type为1的时候是虚岁,2的时候是周岁 */ function getAgeByBirth($date,$type = 1){ $nowYear = date("Y",time()); $nowMonth = date("m",time()); $nowDay = date("d",time()); $birthYear = date

  • JAVA 根据身份证计算年龄的实现代码

    下面一段代码给大家分享java根据身份证计算年龄的方法,具体代码如下所示: birthDate = idCard.substring(6,10)+"-"+idCard.substring(10,12)+"-"+idCard.substring(12,14) public static int getAgefromBirthTime(String birthTimeString){ // 先截取到字符串中的年.月.日 String strs[] = birthTime

  • Java中使用LocalDate根据日期来计算年龄的实现方法

    Java中和日期直接相关的类有很多,平时最常用到的就是java.util package下面的Date和Calendar,需要用到格式的时候还会用到java.text.SimpleDateFormat 首先吐槽一下,Date和Calendar实际用起来还是有一些别扭的,刚开始用的时候不熟悉,老是分不清Date和Calendar类的具体用法和区别. 而且Calendar类的set方法来设置日期时又有一些反人类,设置月份的时候总是要脑补一下减去1,比如要设置为2018年1月6日就要设置成2018,0

  • Mysql中通过生日计算年龄的多种方法

    以前使用mysql不是很多,对mysql的函数也不是很熟悉,遇到这个问题第一时间百度搜索,搜索到这两种方法,这两种方法是排在百度第一条的博客. 方法一 SELECT DATE_FORMAT(FROM_DAYS(TO_DAYS(NOW())-TO_DAYS(birthday)), '%Y')+0 AS age 方法一,作者也说出了缺陷,就是当日期为未来日期时结果为0,而不是负数:这里使用了5个函数和两个运算符. 方法二 SELECT DATE_FORMAT(NOW(), '%Y') - DATE_

  • python根据出生年份简单计算生肖的方法

    本文实例讲述了python根据出生年份简单计算生肖的方法.分享给大家供大家参考.具体分析如下: 这里使用python根据出生年份计算生肖,看了代码会发现原来这么简单 #计算生肖 def ChineseZodiac(year): return u'猴鸡狗猪鼠牛虎兔龙蛇马羊'[year%12] ChineseZodiac(1990) 希望本文所述对大家的Python程序设计有所帮助.

  • Java实现利用广度优先遍历(BFS)计算最短路径的方法

    本文实例讲述了Java实现利用广度优先遍历(BFS)计算最短路径的方法.分享给大家供大家参考.具体分析如下: 我们用字符串代表图的顶点(vertax),来模拟学校中Classroom, Square, Toilet, Canteen, South Gate, North Gate几个地点,然后计算任意两点之间的最短路径. 如下图所示: 如,我想从North Gate去Canteen, 程序的输出结果应为: BFS: From [North Gate] to [Canteen]: North Ga

  • Java遍历集合方法分析(实现原理、算法性能、适用场合)

    概述 Java语言中,提供了一套数据集合框架,其中定义了一些诸如List.Set等抽象数据类型,每个抽象数据类型的各个具体实现,底层又采用了不同的实现方式,比如ArrayList和LinkedList. 除此之外,Java对于数据集合的遍历,也提供了几种不同的方式.开发人员必须要清楚的明白每一种遍历方式的特点.适用场合.以及在不同底层实现上的表现.下面就详细分析一下这一块内容. 数据元素是怎样在内存中存放的? 数据元素在内存中,主要有2种存储方式: 1.顺序存储,Random Access(Di

  • python计算时间差的方法

    本文实例讲述了python计算时间差的方法.分享给大家供大家参考.具体分析如下: 1.问题: 给定你两个日期,如何计算这两个日期之间间隔几天,几个星期,几个月,几年? 2.解决方法: 标准模块datetime和第三方包dateutil(特别是dateutil的rrule.count方法)能非常简单迅速的帮你解决这个问题. from dateutil import rrule import datetime def weeks_between(start_date, end_date): week

随机推荐