DateTime.ToString FormatException error

本文关键字:error FormatException ToString DateTime | 更新日期: 2023-09-27 18:00:36

我想做一个计时器,并在标签中打印值。我知道:

label1.Text = (DateTime.Now - startDate).ToString("HH:mm:ss");

但我收到一个FormatException错误。我的代码出了什么问题?

DateTime.ToString FormatException error

DateTime.Now - startDate返回的是TimeSpan,而不是DateTime

您需要用反斜杠转义冒号,并在TimeSpan.ToString:中使用小写hh

TimeSpan diff = DateTime.Now - startDate;
label1.Text = diff.ToString("hh'':mm'':ss");

但请注意,小时永远不会超过23小时,最大值为23:59:59。如果您还想显示日期,则必须使用类似"dd'':hh'':mm'':ss"的格式。

label1.Text = DateTime.Compare(Convert.ToDateTime(startDate.Text), Convert.ToDateTime(ToDate.Text,"hh'':mm'':ss"));