字符串到 NSDate Swift2

String into NSDate Swift2

我从 JSON 响应中获得以下字符串:

2016-05-24 17:13:08

我使用以下代码将其解析为 NSDate

if let messagedate = onemessage["timestamp"] as? String {
    let dateFormatter = NSDateFormatter()
    dateFormatter.dateFormat = "yyyy-MM-dd hh:mm:ss"
    let date = dateFormatter.dateFromString(messagedate)
    curr_message.date = date
   }

其中 curr_message 的类型 Message 初始化如下:

class Message : NSObject {
var id: String?
var text: String?
var date: NSDate?
var sender: Friend?
}

问题是在 if 条件执行后 curr_message.date 值总是 nil

dateFormatter.dateFormat 使用 "HH" 而不是 "hh"。

"hh" 用于 AM/PM 格式,"HH" 用于 24 小时格式,您有后者:17:13:08.