2014-01-22 67 views
1

我的代码片段是这样的从时间C#删除秒钟部分

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

,这产生一个输出

10:00:00 

但我想要得到的结果作为

10:00 

什么是达到这个目标的正确方法?

+1

输出是不是一个真正的字符串 - 它只是一个'TimeSpan'。 TimeSpan没有“有或没有”的概念或特定的格式。在此之后你在做什么“TimeSpan”? –

+0

[如何从DateTime.ToString()]中排除秒的可能重复(https://stackoverflow.com/questions/3316083/how-to-exclude-seconds-from-datetime-tostring) –

回答

4

试试这个:

DateTime.ToShortTimeString() 
6

您可以使用在DateTime此格式字符串:HH: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")