Ios 如何将纳秒转换为毫秒
我正在尝试从Ios 如何将纳秒转换为毫秒,ios,swift,nsdate,nscalendar,milliseconds,Ios,Swift,Nsdate,Nscalendar,Milliseconds,我正在尝试从NSCalendarUnit获取毫秒。我能够获得纳秒,但那有太多的数字。我只想要两个数字。这是我的密码: var startDate = NSDate() let dateComponents = NSCalendar.currentCalendar().components(NSCalendarUnit.CalendarUnitNanosecond, fromDate: startDate, toDate: NSDate(), options: nil) let strFract
NSCalendarUnit
获取毫秒。我能够获得纳秒
,但那有太多的数字。我只想要两个数字。这是我的密码:
var startDate = NSDate()
let dateComponents = NSCalendar.currentCalendar().components(NSCalendarUnit.CalendarUnitNanosecond, fromDate: startDate, toDate: NSDate(), options: nil)
let strFraction = String(format: "%02d", dateComponents.nanosecond)
timeLabel.text = "\(strFraction)"
如何从NSCalendarUnit中获取毫秒数?因为没有Calendar.Component.millister
,与之相反,我们需要将纳秒转换为毫秒。1毫秒是1000000纳秒,因此需要将纳秒数除以1000000。如果您想要一个整数值,round(纳秒/1000000)
我尝试了以下操作:让strFraction=String(格式:“%02d”,round(dateComponents.nanosecond/1000000))
它给了我以下错误:找不到接受类型为“(Int)的参数列表的“round”的重载“
这是因为round
无法处理参数的正则整数。它只接受double或float。因此,您希望通过double(dateComponents.nanosecond)/1000000将dateComponents.nanosecond/1000000转换为double,您的意思是:let毫秒:double=(dateComponents.nanosecond)/1000000