1、TimeSpan结构:表示一个时间间隔。
2、命名空间为 System 程序集:mscorlib(在mscorlib.dll中)
3.、说明:DateTime值类型代表了一个从公元0001年1月1日0点0分0秒到公元9999年12月31日23点59分59秒之间的具体日期时刻。因此,我们可以用DateTime值类型来描述任何在想象范围之内的时间。
4.、TimeSpan值包含了许多属性与方法,用于访问或处理一个TimeSpan值,TimeSpan值包含了许多属性与方法,用于访问或处理一个TimeSpan值,其中的五个重载方法之一的结构 TimeSpan( int days, int hours, int minutes, int seconds )
下面是其中的一部分方法及属性解释:
Add:与另一个TimeSpan值相加。
Days:返回用天数计算的TimeSpan值。
Duration:获取TimeSpan的绝对值。
Hours:返回用小时计算的TimeSpan值
Milliseconds:返回用毫秒计算的TimeSpan值。
Minutes:返回用分钟计算的TimeSpan值。
Negate:返回当前实例的相反数。
Seconds:返回用秒计算的TimeSpan值。
Subtract:从中减去另一个TimeSpan值。
Ticks:返回TimeSpan值的tick数。
TotalDays:返回TimeSpan值表示的天数。
TotalHours:返回TimeSpan值表示的小时数。
TotalMilliseconds:返回TimeSpan值表示的毫秒数。
TotalMinutes:返回TimeSpan值表示的分钟数。
TotalSeconds:返回TimeSpan值表示的秒数。
代码:
TimeSpan ts = new TimeSpan(7, 18, 23, 41, 576);//将时间间隔ts4初始化为7天18小时23分41秒576毫秒(毫秒以千进制)
DateTime dt1 = new DateTime(2014,9,22,7,16,39);
DateTime dt2 = DateTime.Now;
ts4 = dt2 - dt1; //重新给ts4赋值
Console.WriteLine("时间间隔为:{0}",ts4);
Console.WriteLine("时间间隔的天数部分:{0}", ts.Days);
Console.WriteLine("时间间隔的小时部分:{0}", ts.Hours);
Console.WriteLine("时间间隔的分钟部分:{0}", ts.Minutes);
Console.WriteLine("时间间隔的秒部分:{0}", ts.Seconds);
Console.WriteLine("时间间隔的毫秒部分:{0}", ts.Milliseconds);
Console.WriteLine("时间间隔的等效刻度数(计时单位:一百纳秒):{0}", ts.Ticks); //输出多少个一百纳秒:30天*24小时*60分*60秒*1000毫秒+03小时*60分*60秒*1000毫秒+09分*60秒*1000毫秒+48秒*1000毫秒+599毫秒=2603388599毫秒,因为刻度是一百纳秒(一千万分之一秒),毫秒为一千分之一秒,所以一毫秒等于1万乘以一百纳秒,所以最后等于2603388599毫秒*10000+5781(个一百纳秒)=26033885995781。
Console.WriteLine("时间间隔的等效天数:{0}", ts.TotalDays);
Console.WriteLine("时间间隔的等效小时数:{0}", ts.TotalHours);
Console.WriteLine("时间间隔的等效分钟数:{0}", ts.TotalMinutes);
Console.WriteLine("时间间隔的等效秒数:{0}", ts.TotalSeconds);
Console.WriteLine("时间间隔的等效毫秒数:{0}", ts.TotalMilliseconds);
结果:
它的四个构造函数
1、TimeSpan(Int64)将 TimeSpan结构的新实例初始化为指定的刻度数。
(DateTime.Tick:是计算机的一个计时周期,单位是一百纳秒,即一千万分之一秒)
2、TimeSpan(Int32, Int32, Int32)将 TimeSpan结构的新实例初始化为指定的小时数、分钟数和秒数。
3、TimeSpan(Int32, Int32, Int32, Int32)将 TimeSpan结构的新实例初始化为指定的天数、小时数、分钟数和秒数。
4、TimeSpan(Int32,Int3效果为:2, Int32, Int32, Int32)将新的 TimeSpan结构初始化为指定的天数、小时数、分钟数、秒数和毫秒数。
代码:
TimeSpan ts0 = new TimeSpan(36); //将时间间隔ts0初始化为36刻度数
TimeSpan ts1 = new TimeSpan(4, 20, 33); //将时间间隔ts1初始化为4小时20分33秒
TimeSpan ts2 = new TimeSpan(2,10,36,45); //将时间间隔ts2初始化为2天10小时36分45秒
TimeSpan ts3 = new TimeSpan(6, 12, 56, 45,23); //将时间间隔ts3初始化为6天12小时56分45秒23毫秒
Console.WriteLine(ts0);
Console.WriteLine(ts1);
Console.WriteLine(ts2);
Console.WriteLine(ts3);
结果: