C#Timespan毫秒与TotalMilliseconds
在下面的示例中,为什么毫秒属性返回0,但TotalMilliseconds属性返回5000
// 5 seconds TimeSpan intervalTimespan = new TimeSpan(0, 0, 5); // returns 0 intervalTimespan.Milliseconds; // returns 5000.0 intervalTimespan.TotalMilliseconds
简单:
- 毫秒是剩下的毫秒,不是一秒钟。
- TotalMilliseconds是以毫秒表示的时间范围的完整持续时间。
因为Milliseconds
返回毫秒部分,而TotalMilliseconds返回Timespan
表示的总毫秒数
例如:0:00:05.047
毫秒:47
总毫秒数:5047
这是因为intervalTimespan.Milliseconds; 返回时间跨度的毫秒分量。 在您的时间跨度构造函数中,您只有小时分秒的组件,这就是为什么结果为0. intervalTimespan.TotalMilliseconds – 这会让您获得时间跨度的总毫秒数。 例如:
// 5 miliseconds TimeSpan intervalTimespan = new TimeSpan(0, 0,0,0,5); // returns 5 intervalTimespan.Milliseconds; // returns 5 intervalTimespan.TotalMilliseconds
很明显,Miliseconds只返回TimeSpan
毫秒数,而TotalMiliseconds
计算TimeSpan
代表的毫秒数。
在你的情况下,首先返回0
因为你有5秒,第二次返回5000
因为5秒== 5000毫秒
TimeSpan有其他重载
TimeSpan(hour, minute, seconds) TimeSpan(days, hour, minute, seconds) TimeSpan(days, hour, minute, seconds, milliseconds)
Milliseconds属性将返回实际的毫秒值
TotalMilliseconds返回包括天,小时,分钟和秒在内的总体毫秒数