C#计算两个时间的差
2023-09-14 09:04:59 时间
理论区别
DateTime是类,表示时间上的某一刻。
TimeSpan是结构,表示一个时间间隔。
DateTime类型包含了表示某个日期(年、月、日)的数据以及时间值,可以使用指定的成员以各种形式将他们格式化。
TimeSpan结构允许你方便地使用各个成员定义和转换时间单位。
样例代码:
/// <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);
}
输出样例:
其它函数:
Add:与另一个TimeSpan值相加。
Days:返回用天数计算的TimeSpan值。
Duration:获取TimeSpan的绝对值。
Hours:返回用小时计算的TimeSpan值
Milliseconds:返回用毫秒计算的TimeSpan值。
Minutes:返回用分钟计算的TimeSpan值。
Negate:返回当前实例的相反数。
Seconds:返回用秒计算的TimeSpan值。
Subtract:从中减去另一个TimeSpan值。
Ticks:返回TimeSpan值的tick数。
TotalDays:返回TimeSpan值表示的天数。
TotalHours:返回TimeSpan值表示的小时数。
TotalMilliseconds:返回TimeSpan值表示的毫秒数。
TotalMinutes:返回TimeSpan值表示的分钟数。
TotalSeconds:返回TimeSpan值表示的秒数。
相关文章
- C#计算某一些任务的执行时间(消耗时间)
- C#中Encoding.Unicode与Encoding.UTF8的区别
- C# 指针学习笔记之指针类型
- C# DataRow 比较
- 【原创】开源Math.NET基础数学类库使用(17)C#计算矩阵条件数
- 【原创】开源Math.NET基础数学类库使用(15)C#计算矩阵行列式
- 【原创】开源Math.NET基础数学类库使用(11)C#计算相关系数
- C#界面控件汇总
- (四十)c#Winform自定义控件-开关-HZHControls
- C#+OpenGL+FreeType显示3D文字(2) - 用GLSL+VBO绘制文字
- C#(Winform) 当前线程不在单线程单元中,因此无法实例化 ActiveX 控件
- C#串口通信类