如何从24小时时间格式中获得差异?

时间:2015-02-20 07:52:47

标签: c# asp.net datetime timespan

我有两次(来自Time Picker)

Time1=22:10
Time2=05:10

我需要的总时差07:00

例如,从10:10 pm05:10 am,差异为7小时。就像这样,我想问如何找到它是否是24小时格式?

我怎样才能实现它?在12小时的情况下我很好。但我不知道如何以24小时格式做到这一点?这是一个Web应用程序。

1 个答案:

答案 0 :(得分:6)

当您尝试获取DateTimeTimeSpan的字符串代表时,

仅格式化 。这两种类型实例之间的差异对格式化没有影响。

如果这些值为TimeSpan喜欢;

TimeSpan ts1 = new TimeSpan(22, 0, 0);
TimeSpan ts2 = new TimeSpan(7, 0, 0);
TimeSpan result = ts1 - ts2;

result{15:00:00}作为TimeSpan 15作为Hour property

顺便说一下,AM/PM格式仅适用于DateTime值而不是TimeSpanTimeSpan时间间隔

例如;我们不能在中午之前或中午之后TimeSpan值说,因为它根本没有意义

如果您有DateTime这样的值(并且我认为这些示例会与您的值匹配,因为您希望在22:1005:10之间获得7小时的差异)

DateTime dt1 = new DateTime(2015, 2, 21, 5, 10, 0);
DateTime dt2 = new DateTime(2015, 2, 20, 22, 10, 0);
TimeSpan result = dt1 - dt2;

result{07:00:00}作为TimeSpan 7作为Hour属性。