c# 计算两个时间段相差多少分钟

如题所述

如果你是时间段是日期和时间加起来的,就用下面的方法 比如是 B的时间减去A的时间吧
TimeSpan ts = new TimeSpan(); string A = A.Text + " "; (日期) A += C.Text;(C是时间,加起来就完整了) DateTime DT1 = DateTime.Parse(A);
string B = B.Text + " ";(B是日期) B += D.Text;(D是时间,加起来就好了。) DateTime DT2 = DateTime.Parse(B); ts = (DT2 - DT1); int SUB = Convert.ToInt32(ts.TotalMinutes);
则SUB就是要求的数 TotalMinutes是转换成总分钟数
如果想要转换成别的单位,可以把TotalMinutes变成Hours或Seconds都可以

如果是个完整的时间段,就不需要把日期和时间相加了, 直接定义DateTime 就可以了,完了相减转换就可以了!
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2021-01-29
         /// <summary>
         /// 计算两个日期的时间间隔,返回的是时间间隔的日期差的绝对值.
         /// </summary>
         /// <param name="DateTime1">第一个日期和时间</param>
         /// <param name="DateTime2">第二个日期和时间</param>
         /// <returns></returns>
         private string DateDiff(DateTime DateTime1,DateTime DateTime2)
         {
             string dateDiff=null;
             try
             {
                 TimeSpan ts1=new   TimeSpan(DateTime1.Ticks);
                 TimeSpan ts2=new   TimeSpan(DateTime2.Ticks);
                 TimeSpan ts=ts1.Subtract(ts2).Duration();
                 dateDiff=ts.Days.ToString()+"天"
                         +ts.Hours.ToString()+"小时"
                         +ts.Minutes.ToString()+"分钟"
                         +ts.Seconds.ToString()+"秒";
             }
             catch
             {

             }
             return dateDiff;
         }

在C#中有一个特殊的类型TimeSpan 他是一个结构体.

TimeSpan是用来表示一个时间段的实例,两个时间的差可以构成一个TimeSpan实例.

TimeSpan.Minutes(其他时间比如天数,小时数,秒数都一样的情况下得到的分钟数的差),其他的Hours,Second一样

第2个回答  推荐于2018-03-22
DataTime t1=...
DateTime t2=...
TimeSpan ts=t1-t2;
ts.TotalMinutes
相似回答