获取当前日期(以毫秒为单位)
任何人都可以告诉我如何以毫秒为单位获取当前日期吗?
Can any one give me an idea how to get the current date in milliseconds?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
任何人都可以告诉我如何以毫秒为单位获取当前日期吗?
Can any one give me an idea how to get the current date in milliseconds?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(12)
@JavaZava你的解决方案很好,但是如果你想要一个13位长的值与Java或JavaScript(和其他语言)中的时间戳格式一致,请使用此方法:
或(如果你需要一个字符串):
@JavaZava your solution is good, but if you want to have a 13 digit long value to be consistent with the time stamp formatting in Java or JavaScript (and other languages) use this method:
or (if you need a string):
正如前面提到的,
[[NSDate date] timeIntervalSince1970] 返回一个 NSTimeInterval,它是以秒为单位的持续时间,而不是毫秒。
您可以访问 https://currentmillis.com/ 查看如何获得您想要的语言。这是列表 -
为了目标 CI 做了类似下面的事情来打印它 -
希望这会有所帮助。
As mentioned before,
[[NSDate date] timeIntervalSince1970] returns an NSTimeInterval, which is a duration in seconds, not milli-seconds.
You can visit https://currentmillis.com/ to see how you can get in the language you desire. Here is the list -
For objective C I did something like below to print it -
Hopw this helps.
将
NSTimeInterval
milisecondedDate
值转换为nsstring
,然后转换为int
。Cconvert
NSTimeInterval
milisecondedDate
value tonsstring
and after that convert intoint
.您可以使用以下方法来获取当前日期(以毫秒为单位)。
或
来源:
iPhone:如何获取当前毫秒数?
You can use following methods to get current date in milliseconds.
OR
Source:
iPhone: How to get current milliseconds?
使用它来获取以毫秒为单位的时间
(long)(NSTimeInterval)([[NSDate date] timeIntervalSince1970])
。Use this to get the time in milliseconds
(long)(NSTimeInterval)([[NSDate date] timeIntervalSince1970])
.延长日期可能是最好的办法。
An extension on date is probably the best way to about it.
有多种方法可以做到这一点,尽管我个人最喜欢的是:
您可以阅读有关此方法的更多信息 这里。您还可以创建 NSDate 对象并通过调用 timeIntervalSince1970 返回 秒 自 1970 年 1 月 1 日以来:
在 Swift 中:
There are several ways of doing this, although my personal favorite is:
You can read more about this method here. You can also create a NSDate object and get time by calling timeIntervalSince1970 which returns the seconds since 1/1/1970:
And in Swift:
将 NSTimeInterval 直接转换为 long 对我来说会溢出,因此我必须转换为 long long。
结果是 Unix 中的 13 位时间戳。
Casting the NSTimeInterval directly to a long overflowed for me, so instead I had to cast to a long long.
The result is a 13 digit timestamp as in Unix.
你可以这样做:
这将返回一个以毫秒为单位的值,因此,如果将结果值乘以 1000(按照我的 Eimantas 的建议),你将溢出 long 类型,并导致负值。
例如,如果我现在运行该代码,它将
导致
You can just do this:
this will return a value en milliseconds, so if you multiply the resulting value by 1000 (as suggested my Eimantas) you'll overflow the long type and it'll result in a negative value.
For example, if I run that code right now, it'll result in
and