时间 时间戳

/// <summary>
/// 获取当前时间的时间戳
/// </summary>
/// <returns></returns>
public static long GetCurrTime()
{
    return new DateTimeOffset(DateTime.UtcNow).ToUnixTimeSeconds();
}

/// <summary>
/// 时间戳转换成年月日
/// </summary>
/// <param name="_time"></param>
/// <returns></returns>
public static string GetTime(string _time)
{
    string timeStamp = _time;
    DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
    long lTime = long.Parse(timeStamp + "0000000");
    TimeSpan toNow = new TimeSpan(lTime);
    DateTime dtResult = dtStart.Add(toNow);
    //Debug.LogError("999999===>>>"+dtResult);
    string date = dtResult.ToShortDateString().ToString();
    string time = dtResult.ToLongTimeString().ToString();
    string[] date_arr = date.Split('/');
    string[] time_arr = time.Split(':');
    string result = date_arr[0] + "年" + date_arr[1] + "月" + date_arr[1] + "日" +" " + time_arr[0] + "时" + time_arr[1] + "分";
    return result;
}

/// <summary>
/// 获取当前时间戳与目标时间戳的时间间隔
/// </summary>
/// <param name="dt">时间戳</param>
/// <returns></returns>
public static string GetDateStringFromNow(string dt)
{
    string timeStamp = dt;
    DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
    long lTime = long.Parse(timeStamp + "0000000");
    TimeSpan toNow = new TimeSpan(lTime);
    DateTime dtResult = dtStart.Add(toNow);
    TimeSpan span = DateTime.Now - dtResult;
    if (span.TotalDays > 90)
    {
        return "3个月前";
    }
    else
    if (span.TotalDays > 60)
    {
        return "2个月前";

    }
    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秒前";
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值