如何以毫秒精度比较两次时间?

发布于 2024-08-29 20:36:40 字数 222 浏览 10 评论 0 原文

我有一个字幕文本文件,适用于标准 srt 格式 00:00:00,000 小时、分钟、秒、毫秒。

我想创建一个计时器来更新字幕屏幕并检查当前时间以了解屏幕上显示的字幕。

哪个最好用? NSTimeInterval,NSDate?我认为最好的方法是将所有时间转换为毫秒数并进行比较。但 NSTimeInterval 的工作单位是秒,而不是毫秒。

有什么线索吗?

马科斯

I have a subtitle text file that works with standart srt format 00:00:00,000 Hour, minutes, seconds, milliseconds.

I want to create a timer to update the subtitle screen and check the current time to know what subtitle show on screen.

Which is the best to use? NSTimeInterval, NSDate? I think the best is to convert all to times to milliseconds number and compare. But NSTimeInterval works with seconds, not milliseconds.

Some clue?

Marcos

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浮生面具三千个 2024-09-05 20:36:40

NSTimeInterval 可能是您想要的。 NSTimeInterval 以秒为单位,但有一个小数部分可以表示亚毫秒值(它的类型定义为双精度)。因此,值 2.5 表示 2 秒 + 500 毫秒。

事实上,NSTimer 使用 NSTimeInterval

+ (NSTimer*)scheduledTimerWithTimeInterval:(NSTimeInterval)seconds
                                invocation:(NSInvocation*)invocation
                                   repeats:(BOOL)repeats;

NSTimeInterval is likely what you want. NSTimeInterval is in units of seconds, but has a fractional portion which can represent sub-millisecond values (it's typedef'ed to a double). Thus a value of 2.5 represents 2 seconds + 500ms.

In fact, NSTimer uses NSTimeInterval

+ (NSTimer*)scheduledTimerWithTimeInterval:(NSTimeInterval)seconds
                                invocation:(NSInvocation*)invocation
                                   repeats:(BOOL)repeats;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文