如何在 swift 中以年、日格式显示秒数
How to display seconds in year, day format in swift
我需要做的就是更改 xcode 显示我的值的方式。我的代码当前以分钟为单位显示某些东西的年龄,例如 4503mint。我希望能够以以下格式显示这些值 3 天 3 小时 3 分钟而不是 4503 分钟。非常感谢您的帮助。问候
你当然可以自己计算(即天=秒/(3600*24)等),你也可以看看NSDateComponentsFormatter
,这可能正是你要找的功能,几乎没有编码工作。
你可以自己计算或者做这样的事情:
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)
你说:
My code currently displaying the age of something in minutes e.g 4503mint . I want to be able to display these values in the following format 3 days 3 hours 3 mint rather than 4503 mint.
您可以使用 NSDateComponentsFormatter
对其进行格式化。只需将分钟数乘以 60 即可得到 NSTimeInterval
,然后您可以将其提供给格式化程序:
let formatter = NSDateComponentsFormatter()
formatter.unitsStyle = .Full
let minutes = 4503
let timeInterval = NSTimeInterval(minutes * 60)
print(formatter.stringFromTimeInterval(timeInterval))
这将产生“3 天 3 小时 3 分钟”(或适合该设备语言环境的任何格式)。
有关详细信息,请参阅 NSDateComponentsFormatter Reference。
我需要做的就是更改 xcode 显示我的值的方式。我的代码当前以分钟为单位显示某些东西的年龄,例如 4503mint。我希望能够以以下格式显示这些值 3 天 3 小时 3 分钟而不是 4503 分钟。非常感谢您的帮助。问候
你当然可以自己计算(即天=秒/(3600*24)等),你也可以看看NSDateComponentsFormatter
,这可能正是你要找的功能,几乎没有编码工作。
你可以自己计算或者做这样的事情:
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)
你说:
My code currently displaying the age of something in minutes e.g 4503mint . I want to be able to display these values in the following format 3 days 3 hours 3 mint rather than 4503 mint.
您可以使用 NSDateComponentsFormatter
对其进行格式化。只需将分钟数乘以 60 即可得到 NSTimeInterval
,然后您可以将其提供给格式化程序:
let formatter = NSDateComponentsFormatter()
formatter.unitsStyle = .Full
let minutes = 4503
let timeInterval = NSTimeInterval(minutes * 60)
print(formatter.stringFromTimeInterval(timeInterval))
这将产生“3 天 3 小时 3 分钟”(或适合该设备语言环境的任何格式)。
有关详细信息,请参阅 NSDateComponentsFormatter Reference。