在.net中的UnixTime Stamp的DateTime

Ram*_*mji 6 .net vb.net datetime unix-timestamp

在vb dot net中是否有任何函数将datetime转换为unix时间戳如果我谷歌我只得到反之亦然而不是vb.net到unix时间戳

任何帮助表示赞赏

cur*_*isk 19

{编辑}删除了旧的参考链接

自1970年1月1日以来的秒数= unix时间

要在VB.NET中获取此信息,请参阅下面的示例(在示例中使用DateTime.UtcNow,但您可以插入所需的任何DateTime)

Dim uTime As Integer
uTime = (DateTime.UtcNow - New DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds
Run Code Online (Sandbox Code Playgroud)

  • 这个链接坏了.您可以更新链接并在答案中包含内容吗? (3认同)

Ian*_*Ian 6

我在某些时候写过这些内容 - 所有这些都与上面的相似,只是稍微详细介绍了我在英国的旧夏季时间调整问题.

Public Function UnixToTime(ByVal strUnixTime As String) As Date
    UnixToTime = DateAdd(DateInterval.Second, Val(strUnixTime), #1/1/1970#)
    If UnixToTime.IsDaylightSavingTime = True Then
        UnixToTime = DateAdd(DateInterval.Hour, 1, UnixToTime)
    End If
End Function

Public Function TimeToUnix(ByVal dteDate As Date) As String
    If dteDate.IsDaylightSavingTime = True Then
        dteDate = DateAdd(DateInterval.Hour, -1, dteDate)
    End If
    TimeToUnix = DateDiff(DateInterval.Second, #1/1/1970#, dteDate)
End Function
Run Code Online (Sandbox Code Playgroud)