C#计算两个时间的差
?理論區(qū)別
DateTime是類,表示時間上的某一刻。
TimeSpan是結(jié)構(gòu),表示一個時間間隔。
?
DateTime類型包含了表示某個日期(年、月、日)的數(shù)據(jù)以及時間值,可以使用指定的成員以各種形式將他們格式化。
TimeSpan結(jié)構(gòu)允許你方便地使用各個成員定義和轉(zhuǎn)換時間單位。
樣例代碼:
/// <summary>/// 計算時間差/// </summary>/// <param name="DateTime1"></param>/// <param name="DateTime2"></param>/// <returns></returns>private static string DateDiff(DateTime DateTime1, DateTime DateTime2){string dateDiff = null;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() + "秒";return dateDiff;} static void Main(string[] args){string t1 = "2020-5-5 11:20:01";string t2 = "2021-1-1 11:20:05";string s = DateDiff(Convert.ToDateTime(t1), Convert.ToDateTime(t2));Console.WriteLine(s);}輸出樣例:?
其它函數(shù):
Add:與另一個TimeSpan值相加。?
Days:返回用天數(shù)計算的TimeSpan值。?
Duration:獲取TimeSpan的絕對值。?
Hours:返回用小時計算的TimeSpan值?
Milliseconds:返回用毫秒計算的TimeSpan值。?
Minutes:返回用分鐘計算的TimeSpan值。?
Negate:返回當(dāng)前實例的相反數(shù)。?
Seconds:返回用秒計算的TimeSpan值。?
Subtract:從中減去另一個TimeSpan值。?
Ticks:返回TimeSpan值的tick數(shù)。?
TotalDays:返回TimeSpan值表示的天數(shù)。?
TotalHours:返回TimeSpan值表示的小時數(shù)。?
TotalMilliseconds:返回TimeSpan值表示的毫秒數(shù)。?
TotalMinutes:返回TimeSpan值表示的分鐘數(shù)。?
TotalSeconds:返回TimeSpan值表示的秒數(shù)。?
總結(jié)
以上是生活随笔為你收集整理的C#计算两个时间的差的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C#字符串截取,查找某字符下标
- 下一篇: switch与if效率实例解析·5年以下