我尝试使用NSDateFormatter
,如下所示
在模拟器上,它工作正常。 - > 2015年6月1日
但是,在实际设备上,它确实不起作用。它将是零。
let d = "Wed Jul 01 04:48:51 +0000 2015"
let formatter = NSDateFormatter()
formatter.dateFormat = "EEE MMM dd HH:mm:ss Z yyyy"
if let date = formatter.dateFromString(d) {
formatter.dateFormat = "yyyy-MM-dd"
self.dateLabel?.text = formatter.stringFromDate(date)
}
这是iPhone的问题吗?
答案 0 :(得分:0)
可能是区域设置和12/24小时时间处理的问题。 尝试强制格式化程序的区域设置与您收到的日期保持一致。
let d = "Wed Jul 01 04:48:51 +0000 2015"
let formatter = NSDateFormatter()
formatter.dateFormat = "EEE MMM dd HH:mm:ss Z yyyy"
formatter.locale = NSLocale(localeIdentifier: "en_US_POSIX")
if let date = formatter.dateFromString(d) {
formatter.locale = NSLocale.currentLocale()
formatter.dateFormat = "yyyy-MM-dd"
self.dateLabel?.text = formatter.stringFromDate(date)
}
查看这些question/answers了解详情。