让我们说我有一个时间跨度变量,它可以是任何东西,从几秒到几小时,几天......(我需要能够以不同的方式设置它)。
我想计算两个给定DateTime之间发生了多少次时间间隔(比如说,我有一个1小时的时间跨度,在这两个日期时间之间经过了多少小时。但它也可以是1小时半或3分钟。 ..)。我希望这个值作为一个被覆盖的整数返回(因此,如果已经过了3.4个遍,它应该返回3)。
最好的方法是什么?我对日期时间并不熟悉,而且我有点围绕着这个问题:)
干杯!
答案 0 :(得分:3)
TimeSpan
归结为long Ticks
属性;你可以简单地执行整数除法。
int x = 10 / 3; // equals 3
TimeSpan period = TimeSpan.FromSeconds(5);
TimeSpan difference = laterDateTime - earlierDateTime;
var periodFitsThisManyTimes = difference.Ticks / period.Ticks;