2017-03-22 100 views
-3

我使用此代码来获取当前日期计算日期的一段时间过去,从今天

let date = Date() 
let formatter = DateFormatter() 
formatter.dateFormat = "yyyy.MM.dd" 
let result = formatter.string(from: date) 

我如何能得到过去的日期,例如一天或任何想法当前日期前一年?

+2

使用'DateComponents'。 – Larme

+0

http://stackoverflow.com/a/29465291/2303865问题是如何添加,但你也可以减去 –

回答

0

尝试使用此:

Date(timeIntervalSinceNow: -3600); \\One hour 

或者你可以用日历本

let calendar = Calendar.current 
var component = DateComponents() 
component.year = -1 
calendar.date(byAdding: component, to: Date()) 
+0

不要使用第一个选项。在某些情况下这将是错误的。 – rmaddy

+0

@rmaddy你能提供这种情况下的例子吗? – Sergey

+0

通常,您会遇到夏令时问题和闰秒问题。日历算法总是最好使用'Calendar'方法。 – rmaddy

相关问题