前言
参考
TimeSpan介绍:
https://blog.csdn.net/weixin_41600552/article/details/82220645
微软文档:
https://docs.microsoft.com/en-us/dotnet/api/system.timespan?view=netcore-3.1#definition
说明
定义
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结构初始化为指定的天数、小时数、分钟数、秒数和毫秒数。
摘要
据微软文档,TimeSpan刻度单位为100ns
TimeSpan格式为:天.时:分:秒.百纳秒
单位格式:day.hour:minute:second.100ns
格式示例:0.0:0:0.0000000
示例代码
static void Test10() { /* 1 s = 1000 ms 1 ms = 1000 us 1 us = 1000 ns A tick is equal to 100 nanoseconds ,刻度为100 ns */ long t = 10000;//0.1us * 10000 = 1 ms var ts1 = new TimeSpan(t);//00:00:00.0010000 Console.WriteLine(ts1); t *= 1000;//1ms * 1000 = 1s var ts2 = new TimeSpan(t);//00:00:01 Console.WriteLine(ts2); t *= 60;//1s * 60 = 1 min var ts3 = new TimeSpan(t);//00:01:00 Console.WriteLine(ts3); t *= 60;//1min * 60 = 1 hour var ts4 = new TimeSpan(t);//01:00:00 Console.WriteLine(ts4); t *= 24;//1hour * 24 = 1 day var ts5 = new TimeSpan(t);//1.00:00:00 Console.WriteLine(ts5); t *= 7;//1day * 7 = 1 week var ts6 = new TimeSpan(t);//7.00:00:00 Console.WriteLine(ts6); t *= 52;//week * 52 = 1 year var ts7 = new TimeSpan(t);//364.00:00:00 Console.WriteLine(ts7); t *= 12;//year * 12 = 1 round var ts8 = new TimeSpan(t);//4368.00:00:00 Console.WriteLine(ts8); var i = 0; }
运行结果