swift2 Swift 2用于循环下限和上限之间的日期

owfi6suc  于 2022-11-06  发布在  Swift
关注(0)|答案(1)|浏览(153)

我有数组;

var mydates             : [String] = []
let startDate           = "2018-03-01"
let endDate             = "2018-03-03"

我有3个变量,startDateendDatedates,我想把这些变量追加到后面,例如:
如果startDate = 2018年3月1日,且endDate = 2018年3月3日
将在**=“2018-03- 01,2018 -03- 02,2018 -03-03”内的所有日期(从开始日期到结束日期)之间添加**日期变量。
我怎么能在swift 2中做到这一点?

wnavrhmk

wnavrhmk1#

以下是打印两个日期之间的所有日期的解决方案**(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"]

相关问题