到典型时间格式的时间(以毫秒为单位)

时间:2012-06-25 13:20:14

标签: objective-c xcode time

我需要将以毫秒为单位收集的时间(例如116124)转换为典型的时间格式,如下所示:03:12:32:04。

我不知道如何做到这一点......你能帮助我吗?

1 个答案:

答案 0 :(得分:10)

根据此处链接的Apple Dev论坛:

https://discussions.apple.com/thread/2350190?start=0&tstart=0

你必须自己做。以下是您可以使用的函数,它将返回格式化字符串:

- (NSString *) formatInterval: (NSTimeInterval) interval{
unsigned long milliseconds = interval;
unsigned long seconds = milliseconds / 1000;
milliseconds %= 1000;
unsigned long minutes = seconds / 60;
seconds %= 60;
unsigned long hours = minutes / 60;
minutes %= 60;

NSMutableString * result = [NSMutableString new];

if(hours)
    [result appendFormat: @"%d:", hours];

[result appendFormat: @"%2d:", minutes];
[result appendFormat: @"%2d:", seconds];
[result appendFormat: @"%2d",milliseconds];

return result;
}