Swift 字符串到 NSDate

Swift string to NSDate

我正在尝试将字符串转换为 NSDate。我在几个帖子上找到了如何做到这一点,但由于某种原因不起作用。

     let dateFormatter = NSDateFormatter()
     dateFormatter.dateFormat = "yyyy-MM-dd hh:mm:ss"
     var test = dictionary["time"] as! String
     loadedItem.time = dateFormatter.dateFromString(test)
     println("Time recorded as: \(loadedItem.time)")
     println("Time from server: " + test)

控制台日志为:

    Time recorded as: nil
    Time from server: 2015-07-07 21:46:11
    Time recorded as: nil
    Time from server: 2015-07-07 21:58:09
    Time recorded as: nil
    Time from server: 2015-07-07 22:02:35
    Time recorded as: nil
    Time from server: 2015-07-07 23:46:49

如您所见,字符串从未被格式化。

HH 是 24 小时格式

 let dateFormatter = NSDateFormatter()
 dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
 var test = dictionary["time"] as! String
 loadedItem.time = dateFormatter.dateFromString(test)
 println("Time recorded as: \(loadedItem.time)")
 println("Time from server: " + test)

所以,只需将日期格式 hh 编辑为 HH。

 dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"

希望对您有所帮助