c#仅显示DateTime的时间部分

Nat*_*Pet 4 c#

我有一个日期显示为10/18/2011 3:12:33 PM

我如何只获得此日期时间的时间部分?

我正在使用C#.

我试过了:

      string timeval = PgTime.ToShortTimeString();
Run Code Online (Sandbox Code Playgroud)

但这不起作用,因为Intellisense只显示ToString();

Bra*_*tie 13

假如说

DateTime PgTime;
Run Code Online (Sandbox Code Playgroud)

您可以:

String timeOnly = PgTime.ToString("t");
Run Code Online (Sandbox Code Playgroud)

可以在MSDN上查看其他格式选项.

此外,如果您想将它组合成一个更大的字符串,您可以执行以下任一操作:

// Instruct String.Format to parse it as time format using `{0:t}`
String.Format("The time is: {0:t}", PgTime);

// pass it an already-formatted string
String.Format("The time is: {0}", PgTime.ToString("t"));
Run Code Online (Sandbox Code Playgroud)

如果PgTime是a TimeSpan,您还有其他一些选择:

TimeSpan PgTime;

String formattedTime = PgTime.ToString("c"); // 00:00:00 [TimeSpan.ToString()]
String formattedTime = PgTime.ToString("g"); // 0:00:00
String formattedTime = PgTime.ToString("G"); // 0:00:00:00.0000000
Run Code Online (Sandbox Code Playgroud)