计算时间差C#版

 

调用

 

显示结果:

C#中,计算时间差主要有以下两种方法: ### 使用`TimeSpan` `TimeSpan`是一个表示时间间隔的结构体,可用于计算两个`DateTime`对象之间的时间差。其相关属性和函数可用于获取不同单位的时间差,如天数、小时数、分钟数等。以下是一个简单示例: ```csharp DateTime d1 = new DateTime(2004, 1, 1, 15, 36, 05); DateTime d2 = new DateTime(2004, 3, 1, 20, 16, 35); TimeSpan d3 = d2.Subtract(d1); string result = "相差:" + d3.Days.ToString() + "天" + d3.Hours.ToString() + "小时" + d3.Minutes.ToString() + "分钟" + d3.Seconds.ToString() + "秒"; Console.WriteLine(result); ``` `TimeSpan`常用属性和函数如下: - `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`值表示的秒数。 [^3] ### 使用SQL中的`DATEDIFF`函数 虽然`DATEDIFF`是SQL函数,但在C#中使用数据库操作时也可借助它计算时间差。其使用方法为`DATEDIFF ( datepart , startdate , enddate )`,能获取各种形式的时间差,如相隔多少天、多少小时、多少分钟等 [^3]。 以下是另一个使用`TimeSpan`计算时间差的示例代码: ```csharp /// <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); } ``` 此示例定义了`DateDiff`方法来计算两个日期时间之间的差值,并将结果格式化为包含天、小时、分钟和秒的字符串 [^4]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值