Swift 字符串“2019-06-22T01:11:08.996Z”的日期格式是什么?
我有一个字符串格式2019-06-22T01:11:08.996Z,但我不明白为什么我的日期格式化程序不会将其转换为NSDate对象。我尝试过使用yyyy-MM-dd'T'HH:MM:ssZ。但我总是得零分Swift 字符串“2019-06-22T01:11:08.996Z”的日期格式是什么?,swift,date-formatting,Swift,Date Formatting,我有一个字符串格式2019-06-22T01:11:08.996Z,但我不明白为什么我的日期格式化程序不会将其转换为NSDate对象。我尝试过使用yyyy-MM-dd'T'HH:MM:ssZ。但我总是得零分 上述表单日期的正确格式是什么?请尝试以下代码获取日期: let dateStr = "2019-06-22T01:11:08.996Z" let date = dateFrom(dateString: dateStr, withDateFormat: "yyyy-MM-dd'
上述表单日期的正确格式是什么?请尝试以下代码获取日期:
let dateStr = "2019-06-22T01:11:08.996Z"
let date = dateFrom(dateString: dateStr, withDateFormat: "yyyy-MM-dd'T'HH:mm:ss.SSSZ", andLocale: "en_US_POSIX")
print(date)
-
提示:您没有处理小数秒。更好的是,使用ISO8601DateFormatter,不必担心格式。请参阅@AtalayAsa,这是错误的格式。错误的日期格式。2.地点不对。3.不要使用NSLocale,请使用Locale。4.不要强行打开结果。退货类型应为日期?,而不是日期!。仍然需要修复区域设置。你需要我们帮忙。
func dateFrom(dateString: String, withDateFormat dateFormat: String, andLocale locale: String) -> Date? {
let dateformatter = DateFormatter()
dateformatter.locale = Locale(identifier: locale)
dateformatter.dateFormat = dateFormat
return dateformatter.date(from: dateString)
}