大家可能已經注意到,某些web應用程序(例如,GMail的某些部分)的比單純DD/MM/YYYY更人類可讀的格式顯示日期。人類可讀的日期格式
例如,如果我從23日(恰好是5天前在寫作的時候打開一個郵件項目,我會得到如下:
12月23日(3天前)
我想實現我自己的Web應用程序類似的邏輯來此。
例如,使用.NET TimeSpan對象打交道時,我想將它轉化成如文本如下:
2個月
3天
是否有一個.NET庫已經能夠這樣做的?
如果不是我可能會建立一些基本的和開源它。
我在這裏做了一個基本的啓動:
public static class TimeSpanHelpers
{
public static string ToHumanReadableString(
this TimeSpan timeSpan)
{
if (timeSpan.TotalDays > 30)
return (timeSpan.TotalDays/30) + " month(s)";
if (timeSpan.TotalDays > 7)
return (timeSpan.TotalDays/7) + " week(s)";
return (timeSpan.TotalDays) + " day(s)";
}
}
請參閱:http://stackoverflow.com/questions/11/how-do-i-calculate-relative-time – CMS 2009-12-26 07:21:37
真棒...我知道有人會問這個,但無法弄清楚什麼條件類型進入搜索框。 – Jonathan 2009-12-26 07:38:23
我在我的博客上有一個簡單的算法,可以擴展:http://www.robfe.com/2009/09/timeago-for-csharp/與您的恐怕不是很不一樣,恐怕... – 2009-12-26 07:27:04