每月30天的天数间隔计算

    技术2022-05-19  23

    最近用到的一个函数:将每个月设定为30天,如果终止日期为每月1号,则不计算该天.

     

    /* 作者:cs59 * 版本:1.0 * 时间:2011-03-04 * 功能:计算间隔天数,每月为30天,终止日期为1号则不计算 */ /// <summary> /// 计算间隔天数,每月为30天,终止日期为1号则不计算. /// </summary> /// <param name="startTime">开始时间</param> /// <param name="endTime">结束时间</param> /// <returns>间隔天数</returns> public static int GetDiffDay(DateTime startTime, DateTime endTime) { //起始时间 int startYear = Convert.ToInt32(startTime.Year); int startMonth = Convert.ToInt32(startTime.Month); int startDay = Convert.ToInt32(startTime.Day); //结束时间 int endYear = Convert.ToInt32(endTime.Year); int endMonth = Convert.ToInt32(endTime.Month); int endDay = Convert.ToInt32(endTime.Day); int TotalDay = 0; //同年同月,直接返回天数 if ((endYear - startYear) == 0 && (endMonth - startMonth) == 0) { TotalDay = (endDay - startDay) > 30 ? 30 : (endDay - startDay); } else { TotalDay = (endYear - startYear) * 12 * 30 + (endMonth - startMonth - 1) * 30; int tempDay = 30 - startDay + (endDay == 1?0:(endDay > 30 ? 30 : endDay)); TotalDay += tempDay; } return TotalDay; } 


    最新回复(0)