在vb.net中,如何将此号码1421165664.0892897转换为日期时间?

时间:2015-01-18 01:01:43

标签: vb.net

在vb.net中,

如何将此号码1421165664.0892897转换为日期时间?

它是一个Unix时间戳。

是否有日期功能来执行此操作?

2 个答案:

答案 0 :(得分:3)

取自here:

static DateTime ConvertFromUnixTimestamp(double timestamp)
{
    DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
    return origin.AddSeconds(timestamp);
}

换句话说,unix时间是自1970-01-01 0:0:0以来的秒数,所以从那时开始在.NET中,并添加秒。

答案 1 :(得分:2)

试试这个:

Public Shared Function UnixTimeStampToDateTime(unixTimeStamp As Double) As DateTime
    ' Unix timestamp is seconds past epoch
    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