1
下面的代碼應該在當年設定的第一天:設置日曆單位每月一年
import UIKit
private func getYearStartDate() -> NSDate {
let calendar = NSCalendar.currentCalendar()
var date = calendar.dateBySettingHour(0, minute: 0, second: 0, ofDate: NSDate(), options: [])
date = calendar.dateBySettingUnit(.Month, value: 1, ofDate: date!, options: [])
date = calendar.dateBySettingUnit(.Day, value: 1, ofDate: date!, options: [])
return date!
}
print("startdate=\(getYearStartDate())")
print("enddate=\(NSDate())")
但是,當我檢查它的值設置爲的第一天明年。
我的結果:
startdate=2017-01-01 02:00:00 +0000
enddate=2016-09-06 13:44:06 +0000
結果我想到:
startdate=2016-01-01 02:00:00 +0000
enddate=2016-09-06 13:44:06 +0000
那麼你有什麼價值?它給我一個正確的結果。您是否知道'print(date)'以UTC打印日期而不是當地時區? –
我在我的問題中包含了這些值。實際上,'print'中的UTC並不是問題。 –
什麼是startdate,enddate?請發佈一個可重複的自包含示例,包括打印聲明。 –