2012-06-25 103 views
4

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

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

+0

对此使用NSDateFormatter。 – Eimantas

+0

你可以使用NSDateFormatter,但是如果你从一个持续时间开始,而不是一个日期,你必须做更多的技巧。 Fellowsoft描述的模块化部门(即“剩余部分”)方法更简单,更直接。 –

回答

10

根据苹果开发论坛链接在这里:

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; 
} 
相关问题