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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 制作QQ微信支付宝三合一收款码

    制作QQ微信支付宝三合一收款码

    2021年11月5日
    62
  • Eclipse项目环境配置

    【1】环境变量配置安装好Eclipse,jdk后,我们不可避免需要配置如下环境变量。【JAVA_HOME】JAVA_HOME=C:\ProgramFiles\Java\jdk1.8.0_101【CLASSPATH】如果系统中已有该变量属性,只需要添加如下到变量值最前:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;…

    2022年4月7日
    268
  • MySql 5.7的默认密码

    MySql 5.7的默认密码

    2022年3月3日
    42
  • Git的下载安装 (图文教程)

    Git的下载安装 (图文教程)git的下载安装目录git的下载git的安装步骤git的下载如果你还没有下载Git,可直接到git官网进行下载。如图直接按下Downloads选项这是页面会跳转到相应的页面按下Windows或DownloadforWindows选项,页面会自动跳转下载页面,当然其它系统类型根据需要下载相应的版本即可。下载完成双击运行点击运行…

    2022年5月27日
    76
  • ping和tracert都是利用_tracert超时

    ping和tracert都是利用_tracert超时windows中的tracert使用的icmp,linux中使用的traceroute是udp报文和icmp返回(??)windows为例:tracert用法一般直接使用tracerthostname[ip]即可tracertbaidu.comtracert39.156.69.79需要快速完成命令可以不将地址解析成主机名并设置超时时间tracert-d-w200baidu.com第一列是条数,第2-4是每次返回的时延(每个地址会请求三…

    2025年12月7日
    6
  • python正则表达式菜鸟教程_正则表达式空格怎么表示

    python正则表达式菜鸟教程_正则表达式空格怎么表示正则表达式的作用:用来匹配字符串一、字符串方法字符串提供的方法是完全匹配,不能进行模糊匹配s=’helloworld’#字符串提供的方法是完全匹配,不能进行模糊匹配print(s.find(‘ll’))#2查找ll的位置,输出的是第一个l的位置ret=s.replace(‘ll’,’xx’)#替换,用ll替换为xxprint(ret)#hexxowo…

    2022年9月27日
    5

发表回复

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

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