我们在编写ASP.net程序时,经常需要计算两个日期之间的间隔,如计算两个日期之间相差的年数、月数、天数、小时数、分钟,秒等,下面的源代码就给出了具体的实现方法。
#region 在asp.net中怎么样计算两个日期相差的年、月份、日期、小时、分钟 、秒等
public enum EnumDateCompare{ year =1, month =2, day =3, hour =4, minute =5, second =6}public static double DateDiff(EnumDateCompare howtocompare, System.DateTime startDate, System.DateTime endDate) { double diff=0; System.TimeSpan TS = new System.TimeSpan(endDate.Ticks-startDate.Ticks);
switch (howtocompare) { case EnumDateCompare.year: diff = Convert.ToDouble(TS.TotalDays/365); break; case EnumDateCompare.month: diff = Convert.ToDouble((TS.TotalDays/365)*12); break; case EnumDateCompare.day: diff = Convert.ToDouble(TS.TotalDays); break; case EnumDateCompare.hour: diff = Convert.ToDouble(TS.TotalHours); break; case EnumDateCompare.minute: diff = Convert.ToDouble(TS.TotalMinutes); break; case EnumDateCompare.second: diff = Convert.ToDouble(TS.TotalSeconds); break; } return diff;}
#endregion
// 调用
// DateTime a=Convert.ToDateTime("2005-09-03 20:15");
// DateTime b=Convert.ToDateTime("2005-09-04 09:09 ");
// double d=Bll.Common.DateDiff(Bll.Common.EnumDateCompare.day,a,b);
// Response.Write(d.ToString("f0"));//四舍五入
本文源自:翔宇亭——IT乐园(http://www.biye5u.com),转载请保留此信息!