2

jquery FullCalendar 插件具有简洁的时间格式。

如果时间是7:00pm,则格式显示为7p

如果时间是上午 7:30,则格式显示为7:30a



问题:有什么方法可以使用标准格式来通过 c# sharp 完成此任务?显然我可以自己创建逻辑来执行此操作,但我希望有一个格式字符串可以完成此操作。

即(不起作用):

MyDateTime.ToString("h{:mm}t");
4

2 回答 2

3

格式化字符串没有条件 - 无法在格式化字符串中指定条件。

您将需要相应地使用标准if和格式。

if(MyDateTime.Minutes == 0)
{
  return MyDateTime.ToString("h");
}

return MyDateTime.ToString"h:mmt");

或者,在一行中:

return MyDateTime.ToString((MyDateTime.Minutes == 0)?"h":"h:mmt");
于 2012-05-01T15:18:56.157 回答
1

不,在内置的 .NET 日期/时间格式中没有这样的东西。您必须自己编写代码。

(老实说,我在其他日期/时间库中没有看到类似的日期和时间。我已经看到了 period 的条件格式但这是另一回事。唯一的例外是“小数秒”,它可以如果时间是整数秒,则表示它们被删除 - 包括小数点。)

于 2012-05-01T15:19:53.933 回答