?? 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);
效果为:
文章图片
【C#的TimeSpan介绍】