【问题标题】:Swift 2 for loop low and high date betweenSwift 2 for 循环低和高日期之间
【发布时间】:2018-08-17 22:57:02
【问题描述】:
我有数组;
var mydates : [String] = []
let startDate = "2018-03-01"
let endDate = "2018-03-03"
我有 3 个变量,startDate,endDate,dates,我想附加这些变量,比如;
如果startDate = 2018-03-01,并且endDate = 2018-03-03
将在开始日期和结束日期的所有日期之间添加 dates variable inside = "2018-03-01,2018-03-02,2018-03-03"。
我怎样才能在 swift 2 中做到这一点?
【问题讨论】:
标签:
swift
variables
swift2
nsdate
【解决方案1】:
这是打印两个日期之间的所有日期的解决方案(Swift 4 代码)
var mydates : [String] = []
let startDate = "2018-03-01"
let endDate = "2018-03-05"
var dateFrom = Date() // First date
var dateTo = Date() // Last date
// Formatter for printing the date, adjust it according to your needs:
let fmt = DateFormatter()
fmt.dateFormat = "yyy-MM-dd"
dateFrom = fmt.date(from: startDate)!
dateTo = fmt.date(from: endDate)!
while dateFrom <= dateTo {
mydates.append(fmt.string(from: dateFrom))
dateFrom = Calendar.current.date(byAdding: .day, value: 1, to: dateFrom)!
}
print(mydates) // Your Result
输出是:
["2018-03-01", "2018-03-02", "2018-03-03", "2018-03-04", "2018-03-05"]