Joh*_*ard 3 nsdateformatter ios swift
如何以YYYY-MM-DD的格式显示一周前的日期,就像在Swift中的这个"2015-02-18"
Leo*_*bus 29
您可以使用日历date(byAdding component:) 计算今天减去一周,然后您可以使用DateFormatter根据需要设置日期格式:
let lastWeekDate = Calendar.current.date(byAdding: .weekOfYear, value: -1, to: Date())!
let dateFormatter = DateFormatter()
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
dateFormatter.dateFormat = "yyyy-MM-dd"
let lastWeekDateString = dateFormatter.string(from: lastWeekDate)
Run Code Online (Sandbox Code Playgroud)
要获取特定格式的日期,您可以使用NSDateFormatter:
var todaysDate:NSDate = NSDate()
var dateFormatter:NSDateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
var todayString:String = dateFormatter.stringFromDate(todaysDate)
Run Code Online (Sandbox Code Playgroud)
NSDate() 返回当前日期
let calendar = NSCalendar.currentCalendar()
let weekAgoDate = calendar.dateByAddingUnitdateByAddingUnit(.WeekOfYearCalendarUnit, value: -1, toDate: NSDate(), options: nil)!
var dateFormatter:NSDateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
var aWeekAgoString:String = dateFormatter.stringFromDate(weekAgoDate)
Run Code Online (Sandbox Code Playgroud)