如何在swift中以年、日格式显示秒

如何在swift中以年、日格式显示秒,swift,time,days,seconds,Swift,Time,Days,Seconds,我所需要做的就是改变xcode显示我的值的方式。我的代码当前以分钟为单位显示某物的年龄,例如4503分钟。我希望能够以以下格式显示这些值3天3小时3分,而不是4503分。非常感谢你的帮助。关于您显然可以自己计算它(即天=秒/(3600*24)等),您还可以查看nsdatecomponentsformter,这可能正是您需要的功能,几乎不需要编写代码 您可以自己计算,也可以这样做: let mySeconds = 700000 let date = NSDate(timeIntervalSince

我所需要做的就是改变xcode显示我的值的方式。我的代码当前以分钟为单位显示某物的年龄,例如4503分钟。我希望能够以以下格式显示这些值3天3小时3分,而不是4503分。非常感谢你的帮助。关于

您显然可以自己计算它(即天=秒/(3600*24)等),您还可以查看nsdatecomponentsformter,这可能正是您需要的功能,几乎不需要编写代码

您可以自己计算,也可以这样做:

let mySeconds = 700000
let date = NSDate(timeIntervalSinceNow: mySeconds) // difference to now
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = NSDateFormatter.dateFormatFromTemplate("yyyy.MM.dd", options: 0, locale:     NSLocale.currentLocale())
dateFormatter.stringFromDate(date)
你说:

我的代码当前以分钟为单位显示某物的年龄,例如4503分钟。我希望能够以以下格式显示这些值3天3小时3分,而不是4503分

您可以使用
nsdatecomponentsformter
对其进行格式化。只需将分钟数乘以60即可得到
NSTimeInterval
,然后可以将其提供给格式化程序:

let formatter = NSDateComponentsFormatter()
formatter.unitsStyle = .Full

let minutes = 4503
let timeInterval = NSTimeInterval(minutes * 60)
print(formatter.stringFromTimeInterval(timeInterval))
这将产生“3天、3小时、3分钟”(或以适合该设备的区域设置的任何格式)


有关更多信息,请参阅。

请详细说明您的要求。也许你可以举一个你想要达到的目标的例子。另外-计算的年份是否为闰年是否重要?谢谢您的回复。对不起,如果我不够清楚的话。但请容忍我,因为我是新来的她。我所需要做的就是改变xcode显示我的值的方式。我的代码当前以分钟为单位显示某物的年龄,例如4503分钟。我希望能够以以下格式显示这些值3天3小时3分,而不是4503分。非常感谢你的帮助。当做