将毫秒整数转换为时间格式的字符串
convert milliseconds Integer into time formatted String
这可能是一个简单的问题,但我很困惑,需要你的帮助。
我需要转换这个:
let S: Int = 45296789
输入:“12 34 56 789”
也就是说S是代表毫秒的整数。我需要的是将其格式化为“hh mm ss iii
”
其中一个解决方案如下:
var a = S/1000/60/60
var b = S/1000/60%60
var c = S/1000 % 60
var d = S % 1000
String(format:"%02i %02i %02i %03i", a, b, c, d)
但我需要的是一种使用 NSDateFormatter()
或 NSTimeFormatter()
的方法,如果可能的话。
我查看了 Whosebug,但是有太多形式的解决方案,我找不到包括毫秒的解决方案。 (789 毫秒部分)
试试这个:
let s = 45296789
let date = NSDate(timeIntervalSince1970: Double(s) / 1000)
let formatter = NSDateFormatter()
formatter.timeZone = NSTimeZone(name: "UTC")
formatter.dateFormat = "HH mm ss SSS"
print(formatter.stringFromDate(date))
拱腹 5
let milliseconds = 35347634
let date = Date(timeIntervalSince1970: milliseconds / 1_000)
let formatter = DateFormatter()
formatter.timeZone = TimeZone(identifier: "UTC")
formatter.dateFormat = "HH:mm:ss"
print(formatter.string(from: date))
这可能是一个简单的问题,但我很困惑,需要你的帮助。 我需要转换这个:
let S: Int = 45296789
输入:“12 34 56 789”
也就是说S是代表毫秒的整数。我需要的是将其格式化为“hh mm ss iii
”
其中一个解决方案如下:
var a = S/1000/60/60
var b = S/1000/60%60
var c = S/1000 % 60
var d = S % 1000
String(format:"%02i %02i %02i %03i", a, b, c, d)
但我需要的是一种使用 NSDateFormatter()
或 NSTimeFormatter()
的方法,如果可能的话。
我查看了 Whosebug,但是有太多形式的解决方案,我找不到包括毫秒的解决方案。 (789 毫秒部分)
试试这个:
let s = 45296789
let date = NSDate(timeIntervalSince1970: Double(s) / 1000)
let formatter = NSDateFormatter()
formatter.timeZone = NSTimeZone(name: "UTC")
formatter.dateFormat = "HH mm ss SSS"
print(formatter.stringFromDate(date))
拱腹 5
let milliseconds = 35347634
let date = Date(timeIntervalSince1970: milliseconds / 1_000)
let formatter = DateFormatter()
formatter.timeZone = TimeZone(identifier: "UTC")
formatter.dateFormat = "HH:mm:ss"
print(formatter.string(from: date))