c# – 人类可读的日期格式

您可能已经注意到某些Web应用程序(例如,GMail的某些部分)以比DD / MM / YYYY更可读的格式显示日期.

例如,如果我从第23页打开一个邮件项目(恰好是3天前在写作时,我会得到以下内容

Dec 23 (3 days ago)

我想在我自己的Web应用程序中实现类似的逻辑.

例如,当处理.NET TimeSpan对象时,我想将其转换为如下所示的文本:

2 months

3 days

有没有.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)";
    }
}

解决方法

Noda Time组正在做这个.来吧,加入乐趣.忘了提到项目位置 Noda Time项目

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...