繁体   English   中英

C# 中两个日期之间的天数差 - 返回整数

[英]Difference in days between two dates in C# - returns integer

这段代码

(this.ApprovedDate - this.ReceivedDate).TotalDays 

给了我一个double类型值。

如何将整数四舍五入? 假设 this.ApprovedDate 和 this.ReceivedDate 都是 DateTime 类型。

TotalDays获取以TotalDays和小数天表示的当前 TimeSpan 结构的值。 相反,您应该使用整数Days属性,它获取当前 TimeSpan 结构表示的时间间隔的天数部分,请参阅文档

请注意,使用Days给出两个日期之间的整数天数,并会忽略分数。 根据您的要求,您可能希望将TotalDaysTotalDays到零位,并将其转换为 MutantNinjaCodeMonkey 建议的整数。

您需要使用 Math 库并转换为 int。

例子:

    var a = new TimeSpan(5, 14, 0, 0);  // 5 days, 14 hours
    var x = a.Days;  // Does not round up. = 5 
    var y = (int) Math.Round(a.TotalDays);  // Rounds up. = 6

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM