timespan
timespan结构:表示一个时间间隔。
它含有以下四个构造函数:
TimeSpan(Int64)将 TimeSpan结构的新实例初始化为指定的刻度数。
(DateTime.Tick:是计算机的一个计时周期,单位是一百纳秒,即一千万分之一秒)
TimeSpan(Int32, Int32, Int32)将 TimeSpan结构的新实例初始化为指定的小时数、分钟数和秒数。
TimeSpan(Int32, Int32, Int32, Int32)将 TimeSpan结构的新实例初始化为指定的天数、小时数、分钟数和秒数。
TimeSpan(Int32,Int3效果为:2, Int32, Int32, Int32)将新的 TimeSpan结构初始化为指定的天数、小时数、分钟数、秒数和毫秒数。
Demo:
-
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);
效果为:
并有以下属性:
Days //直接取出TimeSpan结构所表示的时间间隔的天数部分。
Hours //直接取出TimeSpan结构所表示的时间间隔的小时部分。
Minutes //直接取出TimeSpan结构所表示的时间间隔的分钟部分。
Seconds //直接取出TimeSpan结构所表示的时间间隔的秒数部分。
Milliseconds //直接取出TimeSpan结构所表示的时间间隔的毫秒部分。
Ticks //表示多少个一百纳秒(计算机的一个计时单位)。
TotalDays //将TimeSpan结构所表示的时间间隔换算成等效天数。
TotalHours //将TimeSpan结构所表示的时间间隔换算成等效小时数。
TotalMinutes //将TimeSpan结构所表示的时间间隔换算成等效分钟数。
TotalSeconds //将TimeSpan结构所表示的时间间隔换算成等效秒数数。
TotalMilliseconds //将TimeSpan结构所表示的时间间隔换算成等效毫秒数。
Demo:
-
TimeSpan ts4 = 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}", ts4.Days);
-
Console.WriteLine("时间间隔的小时部分:{0}", ts4.Hours);
-
Console.WriteLine("时间间隔的分钟部分:{0}", ts4.Minutes);
-
Console.WriteLine("时间间隔的秒部分:{0}", ts4.Seconds);
-
Console.WriteLine("时间间隔的毫秒部分:{0}", ts4.Milliseconds);
-
Console.WriteLine("时间间隔的等效刻度数(计时单位:一百纳秒):{0}", ts4.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}", ts4.TotalDays);
-
Console.WriteLine("时间间隔的等效小时数:{0}", ts4.TotalHours);
-
Console.WriteLine("时间间隔的等效分钟数:{0}", ts4.TotalMinutes);
-
Console.WriteLine("时间间隔的等效秒数:{0}", ts4.TotalSeconds);
-
Console.WriteLine("时间间隔的等效毫秒数:{0}", ts4.TotalMilliseconds);
效果为: