目前尚不清楚您是否有Dates
或只有Strings
。如果后者您首先必须使用Date.Parse(btnStart.Text)
或Date.TryParse(btnStart.Text, dateVariable)
解析字符串。
但是,一旦你有两个日期,你可以计算出从dt1 - dt2
它返回一个TimeSpan
对象的持续时间,TimeSpan.ToString
返回所需的字符串:
Dim stopDate As Date
Dim stopIsDate As Boolean = Date.TryParse(btnStop.Text, stopDate)
Dim startDate As Date
Dim startIsDate As Boolean = Date.TryParse(btnStart.Text, startDate)
If stopIsDate AndAlso startIsDate Then
Dim diff As TimeSpan = stopDate - startDate
Me.Label1.Text = diff.ToString("hh\:mm\:ss")
End If
另一种方法是创建一个DateTime
其中的日期被忽略,那么您可以使用所有Date
方法,如ToLongTimeString
。它也更容易提供正确的格式:
Dim time As Date = Date.Today.Add(diff) ' Add takes a TimeSpan
Me.Label1.Text = time.ToLongTimeString()
' or '
Me.Label1.Text = time.ToString("T")
' or '
Me.Label1.Text = time.ToString("HH:mm:ss") ' upper-case HH is 24h clock '
Standard Date and Time Format Strings
感谢蒂姆Schmelter ......这个伟大的工程!我感谢你的时间。 – Noob2Java 2014-10-01 14:27:00