我System.currentTimeMilli()在VB.NET中寻找相当于Java的东西.
打电话的方法是什么?我知道Datetime.Now,但不知道实际转换为长毫秒.
有关我的具体需求的更多细节:
我需要管理登录过期.所以最有可能在我登录时,我会设置一个"expiration_time_milli",等于当前时间+超时值.然后,如果我想检查我的登录是否有效,我会检查"expiration_time_milli"是否仍然优于当前时间.
Guf*_*ffa 12
获取当前时间和时间原点之间的差异,使用TotalMilliseconds属性获取时间跨度为毫秒,并将其转换为long.
DirectCast((Datetime.Now - New DateTime(1970, 1, 1)).TotalMilliseconds, Int64)
Run Code Online (Sandbox Code Playgroud)
看到这里所有涉及 的答案有点令人震惊DateTime.Now,它返回本地时间(如“在系统默认时区”中) - 而System.currentTimeMillis()返回自 Unix 纪元(1970-01-01T00:00:00Z)以来的毫秒数)。这里的所有答案可能应该参考DateTime.UtcNow。
幸运的是,在提出这个问题之后,通过 提供了一种更简单的方法DateTimeOffset.ToUnixTimeMilliseconds()。所以你只需要:
Dim millis = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()
Run Code Online (Sandbox Code Playgroud)
小智 5
你可以用
(DateTime.Now-new DateTime(1970,1,1)).TotalMilliseconds
Run Code Online (Sandbox Code Playgroud)
顺便说一句,只是猜测一下你可能对你有用的东西
DateTime.UtcNow
Run Code Online (Sandbox Code Playgroud)