dub*_*ubi 3 c# datetime timespan duration
最终结果应向用户显示开始时间和结束时间之间的时间跨度(例如,上午06:30开始工作,下午18:30结束,显示的结果应为12小时).
现在,我要DateTime参数; fromTime和toTime每个DateTime参数都有24小时格式的小时,也可能有30分钟的分钟值.
我愿意做的是获得这些DateTime参数之间的时间跨度.我使用这种方法的时间是:
Public TimeSpan GetHourSpan(DateTime fromTime, DateTime toTime)
{
TimeSpan fromH = TimeSpan.FromHours(fromTime.Hour);
TimeSpan toH = TimeSpan.FromHours(toTime.Hour);
TimeSpan hourTotalSpan = toH.Subtract(fromH);
return hourTotalSpan;
}
Run Code Online (Sandbox Code Playgroud)
这很好,我的问题是如果有的话,以分钟为单位获得时间跨度,最后将其添加到TimeSpan要显示的对象中.
如果两者都有30分钟的时间跨度,则以上述方式将返回0,并且如果它在min属性中具有值,则必须开始检查每个参数.
难道没有一种简单的方法可以将时间跨度分别保持数小时和分钟?
Tim*_*son 13
TimeSpan span = toTime - fromTime;
// Split into hours:minutes: span.Hours, span.Minutes
// Total span in hours: span.TotalHours
// Total span in minutes (hours * 60): span.TotalMinutes
Run Code Online (Sandbox Code Playgroud)
如果DateTime从 a 中减去 a DateTime,结果是 aa TimeSpan。所以你可以简单地
TimeSpan result = toTime-fromTime;
int hours = result.Hours;
int minutes = result.Minutes;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
27750 次 |
| 最近记录: |