C计算时间间隔的方法小结

C计算时间间隔的方法小结初始化两个时间变量用于演示实例 DateTime dt1 new DateTime 2013 10 13 19 15 50 DateTime dt2 new DateTime 2013 10 13 19 18 50 下面以计算两个时间相隔总秒数为例 方法一 TimeSpan ts1

大家好,我是讯享网,很高兴认识大家。

初始化两个时间变量用于演示实例。

DateTime dt1 = new DateTime(2013, 10, 13, 19, 15, 50); DateTime dt2 = new DateTime(2013, 10, 13, 19, 18, 50); 

讯享网

下面以计算两个时间相隔总秒数为例。

方法一:

讯享网TimeSpan ts1 = dt2.Subtract(dt1); double secInterval1 = ts1.TotalSeconds; 

也可以简写为:

double secInterval1=dt2.Subtract(dt1).TotalSeconds;
讯享网TimeSpan ts2 = dt2 - dt1; double secInterval2 = ts2.TotalSeconds; 

可简写为:

double secInterval2 = (dt2-dt1).TotalSeconds;

增加输出操作:

讯享网Console.WriteLine("dt1={0}", dt1); Console.WriteLine("dt2={0}", dt2); Console.WriteLine("dt2.Subtract(dt1).TotalSeconds={0}", secInterval1); Console.WriteLine("(dt2-dt1).TotalSeconds={0}", secInterval1); 

得到结果:


讯享网

可见,两种方法结果一致。

当然,还可以计算两时间相隔的天数,小时数,分钟数等等。

下面同样给出演示代码。

int days = ts1.Days;//获取当前 TimeSpan 结构所表示的时间间隔的天数部分。 int hours = ts1.Hours; //获取当前 TimeSpan 结构所表示的时间间隔的小时数部分。 int mins = ts1.Minutes;//获取当前 TimeSpan 结构所表示的时间间隔的分钟数部分。 int secs = ts1.Seconds;//获取当前 TimeSpan 结构所表示的时间间隔的秒数部分。 int msecs = ts1.Milliseconds;//获取当前 TimeSpan 结构所表示的时间间隔的毫秒数部分。 double dayInterval1 = ts1.TotalDays;//获取以整天数和天的小数部分表示的当前 TimeSpan 结构的值。 double hourInterval1 = ts1.TotalHours;//获取以整小时数和小时的小数部分表示的当前 TimeSpan 结构的值。 double minInterval1=ts1.TotalMinutes;//获取以整分钟数和分钟的小数部分表示的当前 TimeSpan 结构的值。 double secInterval1 = ts1.TotalSeconds;//获取以整秒数和秒的小数部分表示的当前 TimeSpan 结构的值。 double msecInterval1 = ts1.TotalMilliseconds;//获取以整毫秒数和毫秒的小数部分表示的当前 TimeSpan 结构的值。 

重新初始化dt1 ,dt2。

讯享网DateTime dt1 = new DateTime(2013, 10, 13, 19, 15, 50); DateTime dt2 = new DateTime(2013, 10, 18, 20, 18, 53); 

再次运行程序,得到以下结果:

大家请注意ts1.Days与ts1.TotalDays等的区别,以免在开发中出现不必要的错误。

扩展阅读:

如何比较DateTime类型数据的大小

小讯
上一篇 2025-03-01 10:18
下一篇 2025-03-03 11:00

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/12256.html