Swift3 如何设置日期格式,如“日期”;5分钟&引用;“1小时”&引用;“昨天”&引用;一周前;?

Swift3 如何设置日期格式,如“日期”;5分钟&引用;“1小时”&引用;“昨天”&引用;一周前;?,swift3,xcode6,nsdate,Swift3,Xcode6,Nsdate,我正在尝试获取类似于facebook发布日期/时间的信息。比如1分钟,1小时,昨天,一周前等等 这是我用来获取此格式的is函数:(Oct-22 17:28 PM) 试试这个代码 let dateFormatter = DateFormatter() dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" dateFormatter.locale = Locale.init(identifier: "en_GB") let before = dateFor

我正在尝试获取类似于facebook发布日期/时间的信息。比如1分钟,1小时,昨天,一周前等等

这是我用来获取此格式的is函数:(
Oct-22 17:28 PM

试试这个代码

let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
dateFormatter.locale = Locale.init(identifier: "en_GB")
let before = dateFormatter.date(from: "2017-10-23 10:28:17")!

//getting the current time
let now = Date()

let formatter = DateComponentsFormatter()
formatter.unitsStyle = .full
formatter.zeroFormattingBehavior = .dropAll
formatter.maximumUnitCount = 1 
formatter.allowedUnits = [.year, .month, .weekOfMonth, .day, .hour, .minute]
formatter.includesApproximationPhrase = true 


let formatString = NSLocalizedString("%@ ago", comment: "e.g. '2 hours ago'")

let timeString = formatter.string(from: before, to: now)
试试这个代码

let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
dateFormatter.locale = Locale.init(identifier: "en_GB")
let before = dateFormatter.date(from: "2017-10-23 10:28:17")!

//getting the current time
let now = Date()

let formatter = DateComponentsFormatter()
formatter.unitsStyle = .full
formatter.zeroFormattingBehavior = .dropAll
formatter.maximumUnitCount = 1 
formatter.allowedUnits = [.year, .month, .weekOfMonth, .day, .hour, .minute]
formatter.includesApproximationPhrase = true 


let formatString = NSLocalizedString("%@ ago", comment: "e.g. '2 hours ago'")

let timeString = formatter.string(from: before, to: now)

请阅读
日期格式化程序
,请…?请阅读
日期格式化程序
,请…?非常感谢,您的解决方案对我有效。只需将“之前”更改为我的服务器时间。现在我得到的时间是这样的:时间大约是5天,时间大约是21小时,时间大约是3分钟,时间大约是3分钟,您可以通过设置
formatter.includesApproximationPhrase=false
来去掉“About”这个词,非常感谢您,您的解决方案对我很有用。只需将“之前”更改为我的服务器时间。现在我得到的时间是这样的:时间大约是5天时间大约是21小时时间大约是3分钟时间大约是3分钟您可以通过设置
formatter.includesApproximationPhrase=false