您的位置:首页 > 其它

每月30天的天数间隔计算

2011-03-04 12:19 513 查看
最近用到的一个函数:将每个月设定为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;
}
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: