C#的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);


效果为:
C#的TimeSpan介绍
文章图片




并有以下属性:
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);


效果为:
C#的TimeSpan介绍
文章图片








【C#的TimeSpan介绍】

    推荐阅读