Unix 时间戳到 HH-mm-ss

Unix Timestamp to HH-mm-ss

我正在将 UnixTimeSpan 转换为日期,但我只想显示它的小时-分钟-秒。 我正在尝试:

Public Shared Function UnixTimeStampToDateTime(ByVal unixTimeStamp As Double) As DateTime
        Dim dtDateTime As System.DateTime = New DateTime(1970, 1, 1, 0, 0, 0, 0, System.DateTimeKind.Utc)
        dtDateTime = dtDateTime.AddSeconds(unixTimeStamp).ToLocalTime()
              Return dtDateTime
    End Function

return 正确的日期时间

02/15/2022 20:23:24

但是当我试图只显示小时-分钟-秒时:

 RichTextBox1.Text= UnixTimeStampToDateTime(CDbl(unxTS.tostring("HH:mm:ss")))

我遇到错误:

System.InvalidCastException: 'Conversion from string "HH:mm:ss" to type 'Double' is not valid.'

有什么问题?

将格式传递到错误的位置。尝试

RichTextBox1.Text = UnixTimeStampToDateTime(CDbl(unxTS)).ToString("HH:mm:ss")

因为 unxTS 是一个数字(我猜),而不是日期时间。格式字符串适用于您的函数返回的日期时间。