日期格式化(类似QQ邮箱中的邮件列表显示日期)

日期格式化(类似QQ邮箱中的邮件列表显示日期)

public static string FormatDateDisplay(DateTime _datetime)
        {
            var ts = DateTime.Now - _datetime;
            if (ts.TotalSeconds < 60)
            {
                return Math.Floor(ts.TotalSeconds).ToString() + "秒前";
            }
            else if (ts.TotalMinutes < 60)
            {
                return Math.Floor(ts.TotalMinutes).ToString() + "分钟前";
            }
            else if (ts.TotalHours < 5)
            {
                return Math.Floor(ts.TotalHours).ToString() + "小时前";
            }

            //今天
            if (DateTime.Now.ToString("yyyyMMdd") == _datetime.ToString("yyyyMMdd"))
            {
                return "今天 " + _datetime.ToString("HH:mm");
            }
            //昨天
            if (DateTime.Now.AddDays(-1).ToString("yyyyMMdd") == _datetime.ToString("yyyyMMdd"))
            {
                return "昨天 " + _datetime.ToString("HH:mm");
            }
            //如果年份与当前年份相等
            if (DateTime.Now.Year == _datetime.Year)
            {
                return _datetime.ToString("MM月dd日");
            }

            return _datetime.ToString("yyyy/MM/dd");
        }
原文地址:https://www.cnblogs.com/waw/p/8109199.html