c#仅显示日期时间的时间部分
我有一个日期显示为2011年10月18日下午3:12:33 如何仅获取此日期时间的时间部分 我用的是C# 我试过:c#仅显示日期时间的时间部分,c#,C#,我有一个日期显示为2011年10月18日下午3:12:33 如何仅获取此日期时间的时间部分 我用的是C# 我试过: string timeval = PgTime.ToShortTimeString(); 但这并没有起作用,因为Intellisense只显示了ToString() 假设 DateTime PgTime; 你可以: String timeOnly = PgTime.ToString("t"); 其他格式选项 此外,如果您想将其组合成一个更大的字符串,可以执行以下操
string timeval = PgTime.ToShortTimeString();
但这并没有起作用,因为Intellisense只显示了ToString() 假设
DateTime PgTime;
你可以:
String timeOnly = PgTime.ToString("t");
其他格式选项
此外,如果您想将其组合成一个更大的字符串,可以执行以下操作之一:
// 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"));
如果PgTime
是TimeSpan
,则您有:
如果需要格式化字符串,只需使用
.ToString(format)
,只指定时间部分。如果需要实际时间,请使用.TimeOfDay
,它将是从午夜开始的TimeSpan
DateTime test = DateTime.Now;
MessageBox.Show(test.ToShortTimeString());
只生成DateTimne值的时间部分。
您能告诉我们PgTime是如何声明的吗?现在不要对名为
PgTime
的类一无所知。不过,现在就做关于日期时间的事情
DateTime PgTime = new DateTime();
var hr = PgTime.Hour;
var min = PgTime.Minute;
var sec = PgTime.Second;
//or
DateTime.Now.ToString("HH:mm:ss tt") gives it to you as a string.
试一试
您可能想仔细阅读,但您没有给我们提供足够的上下文。PgTime的编译时类型是什么?你在代码中遇到了什么编译器错误?请阅读这里的答案:[[1]:还有
DateTime PgTime = new DateTime();
var hr = PgTime.Hour;
var min = PgTime.Minute;
var sec = PgTime.Second;
//or
DateTime.Now.ToString("HH:mm:ss tt") gives it to you as a string.
DateTime instance = DateTime.Now ; // current date/time
string time = instance.ToString("t") ; // short time formatted according to the rules for the current culture/locale