• C#中求两个日期之间相隔的天数


    sql中这样取,select DateDiff("dd",joindatetime,getdate()) from db


       那么在c#中呢


    //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="DateTime1">第一个日期和时间</param>
            /// <param name="DateTime2">第二个日期和时间</param>
            /// <returns></returns>
            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;
            }

    说明:
    1.DateTime值类型代表了一个从公元0001年1月1日0点0分0秒到公元9999年12月31日23点59分59秒之间的具体日期时刻。因此,你可以用DateTime值类型来描述任何在想象范围之内的时间。一个DateTime值代表了一个具体的时刻
    2.TimeSpan值包含了许多属性与方法,用于访问或处理一个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值表示的秒数。


    //// <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;

  • 相关阅读:
    day34
    day33 UDP、进程
    Java RMI 框架(远程方法调用)
    Maven查看JAR包的依赖关系
    连接Oracle数据库的时候报了“Got minus one from a read call”
    Http、Socket和WebService协议之间的区别
    http 协议
    其它
    Jmeter-CSV data set config参数化
    英文
  • 原文地址:https://www.cnblogs.com/tangself/p/1798342.html
Copyright © 2020-2023  润新知