TimeSpan用法详解

TimeSpan用法详解1 DateTime 值类型代表了一个从公元 0001 年 1 月 1 日 0 点 0 分 0 秒到公元 9999 年 12 月 31 日 23 点 59 分 59 秒之间的具体日期时刻 因此 你可以用 DateTime 值类型来描述任何在想象范围之内的时间 一个 DateTime 值代表了一个具体的时刻 2 TimeSpan 值包含了许多属性与方法 用于访问或处理一个 TimeSpan 值下面的列表涵盖了其中的一部分 Add 与另一个 TimeSpa

TimeSpan( 10, 20, 30, 40, 50 ) 10.20:30:40.0

TimeSpan( 1111, 2222, 3333, 4444, 5555 ) 1205.22:47:09.

public string DateStringFromNow(DateTime dt) { TimeSpan span = DateTime.Now - dt; if (span.TotalDays > 60) { return dt.ToShortDateString(); } else if ( span.TotalDays > 30 ) { return "1个月前"; } else if (span.TotalDays > 14) { return "2周前"; } else if (span.TotalDays > 7) { return "1周前"; } else if (span.TotalDays > 1) { return string.Format("{0}天前", (int)Math.Floor(span.TotalDays)); } else if (span.TotalHours > 1) { return string.Format("{0}小时前", (int)Math.Floor(span.TotalHours)); } else if (span.TotalMinutes > 1) { return string.Format("{0}分钟前", (int)Math.Floor(span.TotalMinutes)); } else if (span.TotalSeconds >= 1) { return string.Format("{0}秒前", (int)Math.Floor(span.TotalSeconds)); } else { return "1秒前"; } }



C#中使用TimeSpan计算两个时间的差值

可以反加两个日期之间任何一个时间单位。

private 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; } TimeSpan ts = Date1 - Date2; double dDays = ts.TotalDays;//带小数的天数,比如1天12小时结果就是1.5 int nDays = ts.Days;//整数天数,1天12小时或者1天20小时结果都是1 

/// <summary> /// 日期比较 /// </summary> /// <param name="today">当前日期</param> /// <param name="writeDate">输入日期</param> /// <param name="n">比较天数</param> /// <returns>大于天数返回true,小于返回false</returns> private bool CompareDate(string today, string writeDate, int n) { DateTime Today = Convert.ToDateTime(today); DateTime WriteDate = Convert.ToDateTime(writeDate); WriteDate = WriteDate.AddDays(n); if (Today >= WriteDate) return false; else return true; }

 

示例代码:

<table width="100%" border="1" cellspacing="0" cellpadding="0"> <tr> <td>TimeSpan('T','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('T','2002-10-1','2002-1-1')" --></td> </tr> <tr> <td>TimeSpan('d','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('d','2002-10-1','2002-1-1')" --></td> </tr> <tr> <td>TimeSpan('h','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('h','2002-10-1','2002-1-1')" --></td> </tr> <tr> <td>TimeSpan('u','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('u','2002-10-1','2002-1-1')" --></td> </tr> <tr> <td>TimeSpan('m','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('m','2002-10-1','2002-1-1')" --></td> </tr> <tr> <td>TimeSpan('s','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('s','2002-10-1','2002-1-1')" --></td> </tr> <tr> <td>TimeSpan('D','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('D','2002-10-1','2002-1-1')" --></td> </tr> <tr> <td>TimeSpan('H','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('H','2002-10-1','2002-1-1')" MaxChar="" DChar="" Safety="False" --></td> </tr> <tr> <td>TimeSpan('U','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('U','2002-10-1','2002-1-1')" MaxChar="" DChar="" Safety="False" --></td> </tr> <tr> <td>TimeSpan('M','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('M','2002-10-1','2002-1-1')" MaxChar="" DChar="" Safety="False" --></td> </tr> <tr> <td>TimeSpan('S','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('S','2002-10-1','2002-1-1')" MaxChar="" DChar="" Safety="False" --></td> </tr> <tr> <td>TimeSpan('相差d天h小时','2002-10-1','2002-1-1')</td> <td> <!-- NoahValue ValueName="TimeSpan('相差d天h小时','2002-10-1','2002-1-1')" MaxChar="" DChar="" Safety="False" --></td> </tr> </table>










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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233688.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 左值和右值的理解[通俗易懂]

    关于左值和右值的理解:①从位置来讲:eg:a=b;a在左边,a为左值,那在右边的b就是右值(前提是语句合法,比如说a+25=b;则不合法) ②深层次讲:左值(L_value,L理解为Location)为地址值右值(R_value,R理解为Read)为数据值eg:a=b;即将b(右值–数据值)赋值给a(左值–地址值) ③再通俗一点讲:左值就是…

    2022年4月6日
    75
  • 用Vue高仿qq音乐官网-pc端

    用Vue高仿qq音乐官网-pc端

    2022年3月4日
    49
  • 解决SqlTransaction用尽的问题

    解决SqlTransaction用尽的问题解决SqlTransaction用尽的问题有时候程序处理的数据量比较小时,四平八稳,一切安然无恙,但数据量一大,原先潜伏的问题就暴露无遗了。我做的一个项目,是负责一个厂的考勤的。厂里有员工1000多号人。按每人每天打4次卡,一个月30天,则产生的考勤记录数目为1000*4*30=120,000条。在处理这些记录时,我采用的办法是先生成SQL语句,然后执行这些SQL语句:Sql…

    2022年5月4日
    57
  • golang 实现HTTP代理和反向代理

    golang 实现HTTP代理和反向代理代理的核心功能可以用一句话概括:接受客户端的请求,转发到后端服务器,获得应答之后返回给客户端。下图是《HTTP权威指南》一书中给出的图例,可以很清晰地说明这一流程:代理的功能有很多,事实上整个互联网到处都充斥着代理服务器。如果所有的HTTP访问都是客户端和服务器端直接进行的话,我们的网络不仅会变得缓慢,而且性能会大打折扣。代理服务器根据不同的配置和使用,可能会有不同的功能,这些…

    2022年7月16日
    16
  • jira项目管理软件_jira安装配置教程

    jira项目管理软件_jira安装配置教程Jira是Atlassian公司出品的一款事务管理软件(缺陷管理类的软件)。无论是“需求”,还是“BUG”,或是“任务”,都是“事务”的一种,所以Jira可以胜任非常多的角色:需求管理、缺陷跟踪、任务管理等等……因为Jira提供了专门的Scrum视图和Kanban视图,所以特别适合敏捷开发团队使用。大型互联网公司如LinkedIn、Facebook、eBay等内部都在使用Jira。软件的缺陷软件的缺陷和跟踪的流程JIRA的实践的例子…

    2025年7月24日
    5
  • 【操作系统—-Linux】常用DNS列表「建议收藏」

    【操作系统—-Linux】常用DNS列表「建议收藏」修改etc/resolv.conf内容(一般打开后为空白),增加DNS服务器地址山东青岛联通DNS服务器nameserver202.102.134.68谷歌公共DNS服务器(联网稳定)nameserver8.8.8.8nameserver8.8.4.4114公共DNS(延迟低)nameserver114.114.114.114nameser…

    2022年6月5日
    84

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号