程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 模仿微信朋友圈發布時間,將過去時間格式化成xx(秒/分/小時/天)前,朋友圈時間格式

模仿微信朋友圈發布時間,將過去時間格式化成xx(秒/分/小時/天)前,朋友圈時間格式

編輯:C#入門知識

模仿微信朋友圈發布時間,將過去時間格式化成xx(秒/分/小時/天)前,朋友圈時間格式


模仿微信朋友圈發布時間,使用擴展方法將將過去時間展示成xx(秒/分/小時/天)前,以留言列表中的留言時間為例,先來看一下直接的時間展示效果(date.ToString("yyyy/MM/dd HH:mm:ss"))

感覺很一般,沒有什麼特別

下面 我們寫一個拓展方法,將留言時間格式化成xx(秒/分/小時/天)前

decimal.Truncate(data)//取decimal整數位

public static class HtmlExpansion
{   //只格式化2天內的時間
    public static string AgoDateFomat(this DateTime date)
        {
            var times = DateTime.Now - date;
            var s = Convert.ToDecimal(times.TotalSeconds);//秒
            var m = Convert.ToDecimal(times.TotalMinutes);//分鐘
            var h = Convert.ToDecimal(times.TotalHours);//小時
            var d = Convert.ToDecimal(times.TotalDays);//天

            return s < 60 ? "" + decimal.Truncate(s) + " 秒前" : m < 60 ? "" + decimal.Truncate(m) + " 分鐘前" : h < 24 ? "" + decimal.Truncate(h) + " 小時前" : d < 2 ? "" + decimal.Truncate(d) + " 天前" : date.ToString("yyyy/MM/dd HH:mm:ss");
        }
}

直接在date後面調用date.AgoDateFomat(),展示效果如下

效果圖

是不是感覺比之前的時間高大上了一點

====完===

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved