在C#中实现DateDiff()方法
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
public enum DateInterval
{ Second, Minute, Hour, Day, Week, Month, Quarter, Year } public sealed class DateTimeManger { private DateTimeManger() {}//end of default constructor public static long DateDiff(DateInterval Interval, System.DateTime StartDate, System.DateTime EndDate) { //也可以以字符串方式传入日期,然后将日期字符串转换为日期对象 //DateTime t1 = Convert.ToDateTime(StartDate); //DateTime t2 = Convert.ToDateTime(EndDate); long lngDateDiffValue = 0;
System.TimeSpan TS = new System.TimeSpan(EndDate.Ticks - StartDate.Ticks); switch (Interval) { case DateInterval.Second: lngDateDiffValue = (long) TS.TotalSeconds; break; case DateInterval.Minute: lngDateDiffValue = (long) TS.TotalMinutes; break; case DateInterval.Hour: lngDateDiffValue = (long)TS.TotalHours; break; case DateInterval.Day: lngDateDiffValue = (long) TS.Days; break; case DateInterval.Week: lngDateDiffValue = (long)( TS.Days / 7); break; case DateInterval.Month: lngDateDiffValue = (long)( TS.Days / 30); break; case DateInterval.Quarter: lngDateDiffValue = (long)( (TS.Days / 30) / 3 ); break; case DateInterval.Year: lngDateDiffValue = (long)( TS.Days / 365); break; } return (lngDateDiffValue); }//end of DateDiff }//end of class Samples: public class DateDiffCS { public static void Main (string[] CmdLineArgs) { System.DateTime date1 = System.DateTime.Now; System.DateTime date2 = System.DateTime.Now.AddYears(2); System.Console.Out.WriteLine("Days : " + DateTimeManger.DateDiff(DateTimeManger.DateInterval.Day,date1,date2).ToString()); System.Console.Out.WriteLine("Hours : " + DateTimeManger.DateDiff(DateTimeManger.DateInterval.Hour,date1,date2).ToString()); System.Console.Out.WriteLine("Minutes : " + DateTimeManger.DateDiff(DateTimeManger.DateInterval.Minute,date1,date2).ToString()); System.Console.Out.WriteLine("Month : " + DateTimeManger.DateDiff(DateTimeManger.DateInterval.Month,date1,date2).ToString()); System.Console.Out.WriteLine("Quarter : " + DateTimeManger.DateDiff(DateTimeManger.DateInterval.Quarter,date1,date2).ToString()); System.Console.Out.WriteLine("Seconds : " + DateTimeManger.DateDiff(DateTimeManger.DateInterval.Second,date1,date2).ToString()); System.Console.Out.WriteLine("Week : " + DateTimeManger.DateDiff(DateTimeManger.DateInterval.Week,date1,date2).ToString()); System.Console.Out.WriteLine("Year : " + DateTimeManger.DateDiff(DateTimeManger.DateInterval.Year,date1,date2).ToString()); System.Console.In.ReadLine(); } }//end of the class 该文章在 2021/3/8 9:42:09 编辑过 |
关键字查询
相关文章
正在查询... |