C# 时间操作

获取日期+时间:
DateTime.Now.ToString();                                       // 2008-9-4 20:02:10 
DateTime.Now.ToLocalTime().ToString();               // 2008-9-4 20:12:12 

获取日期 :
DateTime.Now.ToLongDateString().ToString();      // 2008年9月4日
DateTime.Now.ToShortDateString().ToString();     // 2008-9-4
DateTime.Now.ToString("yyyy-MM-dd");                // 2008-09-04
DateTime.Now.Date.ToString();                             // 2008-9-4 0:00:00 

获取时间 :
DateTime.Now.ToLongTimeString().ToString();     // 20:16:16
DateTime.Now.ToShortTimeString().ToString();    // 20:16
DateTime.Now.ToString("hh:mm:ss");                   // 08:05:57 
DateTime.Now.TimeOfDay.ToString();                  // 20:33:50.7187500 

计算时间间隔:
DateTime t1 = DateTime.Now;
DateTime t2 = DateTime.Now;
(t2-t1).Seconds                                                         //时间秒数部分的差值
(t2-t1).Hours                                                             //时间小时部分的差值
(t2-t1).TotalSeconds                                                 //t2,t1总共间隔的秒数
TimeSpan tSpan =t2-t1;                                           //时间间隔类

时间加,n为一个数,可以数整数,也可以事小数:
dt.AddYears(n).ToString();          //时间加n年
dt.AddDays(n).ToString();           //加n天
dt.AddHours(n).ToString();         //加n小时
dt.AddMonths(n).ToString();       //加n个月
dt.AddSeconds(n).ToString();     //加n秒
dt.AddMinutes(n).ToString();      //加n分

特殊格式字符串转时间格式(也可用TryParseExact):
string timestr="20211219225612";
DateTime dt = DateTime.ParseExact(timestr, "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture);

获取时间戳:

    /// <summary>
    /// 获取时间戳
    /// </summary>
    /// <returns></returns>
    public string GetTimeStamp()
    {
        TimeSpan ts = DateTime.Now - new DateTime(1970, 1, 1, 0, 0, 0, 0);
        //TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
        return Convert.ToInt64(ts.TotalSeconds).ToString();
    }

设置时间戳:

    /// <summary>
    /// 获取时间戳
    /// </summary>
    /// <returns></returns>
    public long SetTimeStamp()
    {
        DateTime now = DateTime.Now;
        DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); // 当地时区
        TimeSpan timeSpan = now - startTime;
        long timeStamp = (long)timeSpan.TotalSeconds; // 时间戳(单位:秒)
        return timeStamp;
    }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无熵~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值