Can I get the hour that a TimeSpan begins?

时间:2018-03-09 19:23:23

标签: c# timespan

I'm have to get the initial and the last hour of a TimeSpan variable. Is it possible to obtain? I haven't found anything talking about this.

2 个答案:

答案 0 :(得分:2)

我认为你误解了TimeSpan的目的。

它不代表"从特定时间到特定时间"。

代表一段时间,例如" 5分钟"或者" 6小时"。

表示特定时间的特定时间"你需要使用两个DateTime个对象:一个用于开始时间,一个用于结束时间。

答案 1 :(得分:2)

TimeSpan衡量时间,某事件的持续时间。比如跑一场比赛需要多长时间。你煮意大利面多久了。您希望在什么时间间隔执行事件。你找不到其中任何一个的初始小时和最后一小时。

的可能性是将TimeSpan实例应用于DateTime实例。事件启动时的初始DateTime和事件结束时的结果DateTime 。正如你在问题中提到的那样,只看小时,如果开始和结束发生在不同的日子,可能会导致糟糕的结果。

示例:

TimeSpan duration = new TimeSpan(3, 0, 0); // 3 hours
DateTime start = new DateTime(2017, 5, 12, 16, 25, 0); // starts on
DateTime end = start.Add(duration); // ends 3 hours from start