NSDateFormatter dateFromString返回错误的日期

时间:2015-02-17 08:07:06

标签: ios swift nsdate nsdateformatter

快速提问。

我有一个字符串日期:示例var dateString = "17-02-2015"

我用:

var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "dd-MM-yyyy"

var newDate = dateFormatter.dateFromString(dateString)

我得到了输出:2015-01-16 23:02:00 +0000

为什么我错过了一天?是因为时区吗? (我在+1,在时区的日期是0?)。

我也尝试设置时区:

dateFormatter.locale = NSLocale.currentLocale()
dateFormatter.timeZone = NSTimeZone.systemTimeZone()

但没有成功。

我错过了什么?

1 个答案:

答案 0 :(得分:2)

这是UTC的时间,考虑到你的LocalTime是1 +

,这是正确的
var dateString = "17-02-2015"
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "dd-MM-yyyy"

var newDate = dateFormatter.dateFromString(dateString)!

println(newDate.descriptionWithLocale(NSLocale.currentLocale())!)