从时间C#中删除秒部分

时间:2014-01-22 08:52:33

标签: c# datetime

我的代码段就像这样

DateTime.Parse("2014-04-24T10:00:00").TimeOfDay

,这会产生输出

10:00:00

但我希望得到结果

10:00

实现这一目标的正确方法是什么?

3 个答案:

答案 0 :(得分:6)

您可以在DateTimeHH:mm

上使用此格式字符串
DateTime dt = DateTime.Parse("2014-04-24T10:00:00");
string output = dt.ToString("HH:mm");  // hh if you want 12h clock

另一种方法是使用DateTime.ToShortTimeString

string output = dt.ToShortTimeString()

使用.NET 4+,你也可以使用TimeSpan.ToString,因为它现在实现了IFormattable,虽然我发现很难记住如何正确地逃避它:

string output = dt.TimeOfDay.ToString(@"hh\:mm")

答案 1 :(得分:4)

试试这个:

DateTime.ToShortTimeString()

答案 2 :(得分:3)

由于TimeOfDay返回TimeSpan,您可以使用hh\:mm格式对其进行格式化。

DateTime.Parse("2014-04-24T10:00:00").TimeOfDay.ToString(@"hh\:mm");

看看;

TimeSpan.ToString(String) method需要.NET Framework 4.0或更高版本。