c# - 当我计算 28/07/2018 和 01/08/2018 之间的持续时间时,结果是两天。正确答案是四天。我的错误是什么?
问题描述
当我计算28/07/2018和01/08/2018之间的持续时间时,结果是两天。正确答案是四天。我的错误是什么?
我的代码是:
private static double DateDurationCalculate(DateTime startTime, DateTime endTime)
{
TimeSpan span = endTime.Subtract(startTime);
return span.TotalDays;
}
startTime 是2018/07/28 11:54, endTime 是2018/08/01 09:28。
解决方案
像这样试试
DateTime startTime = DateTime.Parse("2018/07/28 11:54");
DateTime endTime = DateTime.Parse("2018/08/01 09:28");
private static double DateDurationCalculate(DateTime startTime, DateTime endTime)
{
startTime = new DateTime(startTime.Year, startTime.Month, startTime.Day, startTime.Hour, startTime.Minute, 0);
endTime = new DateTime(endTime.Year, endTime.Month, endTime.Day, endTime.Hour, endTime.Minute, 0);
TimeSpan span = endTime.Date.Subtract(startTime.Date);
return span.TotalDays;
}
推荐阅读
- python - 有没有办法在 python 启动时始终执行脚本?(R中类似的site.profile)
- jsf - primefaces 中的网络摄像头不会增加 primefaces 代码中的摄像头的宽度或高度
- javascript - 在对象“意外标记 this”中使用 `this`
- android - 使用淡入淡出按钮将颜色从透明更改为正常颜色
- python - 在尝试序列化模型的子节点和父节点时,我得到 RecursionError
- ios - 与迦太基一起跳到源头
- c# - 将 WebProxy 用于我无法控制的 HttpClient
- wordpress - 从帖子内容中的html标签中排除标签链接
- java - Java从离散类和接口继承?
- iis - 是否可以从 WMI 获取所有 IIS 站点?