C#时间跨度毫秒与总毫秒
在下面的示例中,为什么C#时间跨度毫秒与总毫秒,c#,.net,timespan,C#,.net,Timespan,在下面的示例中,为什么毫秒属性返回0,而总毫秒属性返回5000 // 5 seconds TimeSpan intervalTimespan = new TimeSpan(0, 0, 5); // returns 0 intervalTimespan.Milliseconds; // returns 5000.0 intervalTimespan.TotalMilliseconds 因为millizes返回毫秒部分,而totalmillizes返回由Timespan 示例:0:00:05.
毫秒
属性返回0
,而总毫秒
属性返回5000
// 5 seconds
TimeSpan intervalTimespan = new TimeSpan(0, 0, 5);
// returns 0
intervalTimespan.Milliseconds;
// returns 5000.0
intervalTimespan.TotalMilliseconds
因为
millizes
返回毫秒部分,而totalmillizes返回由Timespan
示例:0:00:05.047
毫秒:47
总毫秒数:5047
是剩余的毫秒,并不构成一整秒钟毫秒
是时间跨度的完整持续时间,以毫秒表示totalmillizes
毫秒
仅返回时间跨度
的毫秒部分,而总毫秒
计算时间跨度表示的时间毫秒数
在您的例子中,第一个返回
0
,因为您正好有5秒,第二个返回5000
,因为5s==5000ms这是因为intervalTimespan。毫秒
返回时间跨度的毫秒分量。
在timespan构造函数中,只有小时、分钟和秒组件,这就是结果为0的原因
intervalTimespan.totalmillizes
获取时间跨度的总毫秒数
例如:
// 5 milliseconds
TimeSpan intervalTimespan = new TimeSpan(0, 0,0,0,5);
// returns 5
intervalTimespan.Milliseconds;
// returns 5
intervalTimespan.TotalMilliseconds
TimeSpan
还有其他重载:
TimeSpan(hour, minute, seconds)
TimeSpan(days, hour, minute, seconds)
TimeSpan(days, hour, minute, seconds, milliseconds)
毫秒
属性返回实际的毫秒值
totalmillizes
属性返回总毫秒数,包括天、小时、分钟和秒。还有一件重要的事情没有提到(根据文档):
millizes
属性表示整毫秒,而totalmillizes
属性表示整毫秒和分数毫秒
这也可以从totalmillists
的备注中扣除:
此属性将此实例的值从刻度转换为毫秒
这有一个巨大的含义,IMO,因为如果您想要以秒或毫秒为单位获得最精确的表示,则必须使用
TotalSeconds
或totalmicondises
属性,这两种类型都是double
@AJM,用于说明示例内容的文档非常明确。请注意,TimeSpan
的所有组件都是这样的属性对,而不仅仅是毫秒<代码>分钟数/总分钟数
,小时数
/总小时数
,等等。。。