计算两个日期之间的时间跨度

时间:2018-01-13 10:05:00

标签: c# unity3d

让我们说我有一个时间跨度变量,它可以是任何东西,从几秒到几小时,几天......(我需要能够以不同的方式设置它)。

我想计算两个给定DateTime之间发生了多少次时间间隔(比如说,我有一个1小时的时间跨度,在这两个日期时间之间经过了多少小时。但它也可以是1小时半或3分钟。 ..)。我希望这个值作为一个被覆盖的整数返回(因此,如果已经过了3.4个遍,它应该返回3)。

最好的方法是什么?我对日期时间并不熟悉,而且我有点围绕着这个问题:)

干杯!

1 个答案:

答案 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;