我有一个号码,例如:
301
我想转换为时间格式:00:05:01
我的想法是让301/3600
得到小时,(301%3600)/60
得到分钟,301%60
得到第二个,我可以得到格式字符串,但是如果有的话简单的方法来获得它?因为我认为这可能不正常。
答案 0 :(得分:0)
我觉得你的方法合适而且正常。没有必要像这样添加API,因为它简单明了,苹果不能为我们做任何事情,当然,你可以自己打包。
答案 1 :(得分:0)
使用NSDateFormatter
尝试此操作NSDate *lastUpdate = [[NSDate alloc] initWithTimeIntervalSince1970:301];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];
dateFormatter.dateFormat = @"HH:mm:ss";
NSLog(@"date time: %@", [dateFormatter stringFromDate:lastUpdate]);
答案 2 :(得分:0)
如果您可以使用mask^(1<<middle)
(几个小时没有前导零),请使用0:05:01
:
<强>夫特:强>
(NS)DateComponentsFormatter
<强> ObjC:强>
let number = 301
let formatter = DateComponentsFormatter()
formatter.allowedUnits = [.hour, .minute, .second]
formatter.zeroFormattingBehavior = .pad
let result = formatter.string(from: TimeInterval(number))
print(result)