上善若水

水善利万物而不争
随笔 - 175, 文章 - 0, 评论 - 10, 阅读 - 14万
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

C# 时间差 TimeSpan

Posted on   董锡振  阅读(1844)  评论(0编辑  收藏  举报

 时间差 TimeSpan的用法

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

TimeSpan 有一些属性:Days、TotalDays、Hours、Minutes、TotalMinutes、TotalHours、Seconds、TotalSeconds、Ticks,注意没有 TotalTicks。

1.先来介绍几个方法

TimeSpan.Minutes两个时间之间相差的分钟数(只计算2012-9-2 10:40:00中的10:40:00部分)

DateTime.Tick :是一个计时周期,表示一百纳秒,即一千万分之一秒。

TimeSpan.TotalDays:两个时间段相差的日数,其他的TotalHours,TotalMinutes,TotalSeconds 一样

TimeSpan.Subtract:表示两个时间段的差

2.实例说明

DateTime dt1 = Convert.ToDateTime("2012-9-2 10:40:00");
      DateTime dt2 = Convert.ToDateTime("2012-9-12 10:39:59");  // 相差9天23小时59分59秒
      TimeSpan span = dt2.Subtract(dt1);

 

span.Days : 9

span.Hours : 23

span.Minutes : 59

span.Seconds : 59

 

span.TotalDays : 9.99998842592593 

span.Ticks/100000000/60/60  :23

( 在这用Convert.ToInt32转换下就是10了   四舍五入 如:

         double s = 9.5;        Convert.ToInt32(s) :10

         double s2 = 9.49;    Convert.ToInt32(s2) :9

         double s3 = 9.4;      Convert.ToInt32(s3) :9

 

 

 

 

 

编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示