没有秒的TimeSpan.TotalMinutes

时间:2012-07-11 11:02:41

标签: c# datetime timespan

我正在使用代码

var minutesPassed = (DateTime.UtcNow - conversionsList.Last().DateStamp).TotalMinutes;

计算两个日期之间经过的分钟数。我得到的结果看起来像

  

254.54445556

我得到分钟和秒钟。如何获得仅包含这样的分钟的结果

  

254

3 个答案:

答案 0 :(得分:7)

使用Math.Floor()将254.xxxx转换为254:

var minutesPassed = Math.Floor((DateTime.UtcNow - conversionsList.Last().DateStamp).TotalMinutes);

答案 1 :(得分:6)

只需将结果显式转换为int

var minutesPassed = (int)(DateTime.UtcNow - conversionsList.Last().DateStamp).TotalMinutes;

答案 2 :(得分:3)

你可以获得int部分

int minutes = (int) (DateTime.UtcNow - conversionsList.Last().DateStamp).TotalMinutes;

这将获得值的int部分。

编辑:考虑到价值的四舍五入。事实并非如此。请考虑以下事项:

 double d = 254.99999999999d;
 int test = (int)d;

此处test将保留254,而非255

显式广播的唯一问题是OverFlowException