【发布时间】:2015-10-06 13:09:14
【问题描述】:
NSDateFormatter 似乎不喜欢 10 月 18 日。每隔一天尝试一次,成功。 (???)
这几乎可以肯定是 swift 2.0 中的一个错误(如果是我该怎么办?我需要尽快提交我的应用程序)。我错过了什么吗?
在 Xcode 7.0.1 的操场上检查过:
let str = "2015-10-18"
let str2 = "2015-10-14"
let formatter = NSDateFormatter()
formatter.locale = NSLocale(localeIdentifier: "en_US_POSIX")
formatter.dateFormat = "yyyy-MM-dd"
var date = formatter.dateFromString(str)
var date2 = formatter.dateFromString(str2)
输出:
"2015-10-18"
"2015-10-14"
<NSDateFormatter: 0x7f8aa050b760>
<NSDateFormatter: 0x7f8aa050b760>
<NSDateFormatter: 0x7f8aa050b760>
nil
"Oct 14, 2015, 12:00 AM"
【问题讨论】:
-
这肯定不是 Swift 2 中的错误,因为我刚刚使用了您的代码 without errors。 :)
-
@EricD。这很奇怪。我有同样的错误。您使用的是哪个 XCode 版本?
-
@Caio Xcode 7 GM。也适用于 Xcode 7.1 beta。
-
您使用的是哪个时区?
America/Campo_Grande、America/Cuiaba和America/Sao_Paulo返回nil -
谢谢 Leo Dabus!你说对了。由于我没有指定时间,它假定它是午夜,但由于第一天是白天,所以没有午夜,直接跳到凌晨 1 点。
标签: swift nsdateformatter