我认为我的字符串日期是一种奇怪的格式,但我有以下代码:
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let date = dateFormatter.dateFromString(subJson["lastSyncTime"].string!)
我的subJson [“lastSyncTime”]。string = 2015-07-30T11:44:37.070
不确定我做错了什么,因为我是swift的新手。看来中间的T可能搞乱了吗?但变量“date”= nil
答案 0 :(得分:2)
日期字符串是ISO 8601
格式的日期,因此请使用此格式
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS"
答案 1 :(得分:1)
我使用这种格式:
yyyy-MM-dd'T'HH:mm:ss.SSS'Z
我已尝试使用您的代码并且有效:
let subJson = "2015-07-30T11:44:37.070"
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z"
let date = dateFormatter.dateFromString(subJson)
答案 2 :(得分:0)
我会建议像这样展开它
if let dateObject = subJson?["lastSyncTime"] as? NSString {
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "MM/dd/yyyy HH:mm a"
var dateNSDate: String = dateFormatter.dateFromString(dateObject)
}