我知道我们可以执行以下操作来显示 AM PM 一段时间。

    String.Format("{0:t}", dt);  // "4:05 PM"

如果我想显示 A 代表 AM 和 P 代表 PM 怎么办。有这样的格式吗?

最佳答案

另一种解决方案是使用 System.Globalization.DateTimeFormatInfo 类,它允许您指定您希望如何格式化 AM/PM:

DateTimeFormatInfo timeFormat = new DateTimeFormatInfo();
timeFormat.ShortTimePattern = CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern;
timeFormat.AMDesignator = "A";
timeFormat.PMDesignator = "P";

// Both of these are the same:
string a = DateTime.Now.ToString("t", timeFormat);
string b = String.Format(timeFormat, "{0:t}", DateTime.Now);

你可以用它做完全自定义的东西:
timeFormat.AMDesignator = "cookies";
timeFormat.PMDesignator = "bagels";

下午 4:05 的示例输出:
4:05 bagels

关于c#时间显示上午下午,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8674354/

10-11 08:29