我发现这个问题已经在Java、JavaScript和PHP中得到了解答,但c#中没有。那么,如何在c#中计算两个日期之间的天数呢?
当前回答
// Difference in days, hours, and minutes.
TimeSpan ts = EndDate - StartDate;
// Difference in days.
int differenceInDays = ts.Days; // This is in int
double differenceInDays= ts.TotalDays; // This is in double
// Difference in Hours.
int differenceInHours = ts.Hours; // This is in int
double differenceInHours= ts.TotalHours; // This is in double
// Difference in Minutes.
int differenceInMinutes = ts.Minutes; // This is in int
double differenceInMinutes= ts.TotalMinutes; // This is in double
你也可以得到秒、毫秒和滴答的差异。
其他回答
上面的答案是正确的,但是如果你只想把整天作为整数,并且愿意放弃约会的时间部分,那么可以考虑:
(EndDate.Date - StartDate.Date).Days
同样假设StartDate和EndDate是DateTime类型。
对于像我这样的初学者来说,在简单的一行代码中就会遇到这个小问题:
int totalDays = Convert.ToInt32((DateTime.UtcNow.Date - myDateTime.Date).TotalDays);
这将计算从今天(DateTime.UtcNow.Date)到所需日期(myDateTime.Date)的总天数。
如果myDateTime是昨天,或比今天更早的日期,这将给出一个正(+)整数结果。
另一方面,如果myDateTime是明天或未来的日期,由于加法规则,这将给出一个负(-)整数结果。
编码快乐!^ _ ^
你可以试试这个
EndDate.Date.Subtract(DateTime.Now.Date).Days
得到两个日期之间的差值,然后从下面得到日期:
int total_days = (EndDate - StartDate).TotalDays
你可以使用下面的代码:
int DateDifInSecond = EndDate.Subtract(StartDate).TotalSeconds
推荐文章
- 实体框架核心:在上一个操作完成之前,在此上下文中开始的第二个操作
- 如何为构造函数定制Visual Studio的私有字段生成快捷方式?
- 如何使用JSON确保字符串是有效的JSON。网
- AppSettings从.config文件中获取值
- 通过HttpClient向REST API发布一个空体
- 如何检查IEnumerable是否为空或空?
- 自动化invokerrequired代码模式
- 解析日期字符串并更改格式
- 在c#代码中设置WPF文本框的背景颜色
- 在c#中,什么是单子?
- c#和Java中的泛型有什么不同?和模板在c++ ?
- Java SimpleDateFormat("yyyy-MM-dd' t ' hh:mm:ss' z '")给出的时区为IST
- c#线程安全快速(est)计数器
- 如何将此foreach代码转换为Parallel.ForEach?
- 如何分裂()一个分隔字符串到一个列表<字符串>