你好,我有一本字典
self.publishedAt = dictionary["publishedAt"] as? NSString
我在其中获取日期“2017-01-27T18:36:36Z”。我想把它转换成 可读格式:dd-MM-yyyy hh:mm:ss。我尝试通过
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd-MM-yyyy hh:mm:ss"
let date = dateFormatter.date(from: (self.publishedAt as? String)!)
print("EXACT_DATE : \(date)")
但得到零。 :(
以简单格式获取日期的正确方法是什么?
最佳答案
您需要一种输入格式将 ISO8601 字符串转换为日期,以及一种输出格式将日期转换回字符串:
let string = "2017-01-27T18:36:36Z"
let dateFormatter = DateFormatter()
let tempLocale = dateFormatter.locale // save locale temporarily
dateFormatter.locale = Locale(identifier: "en_US_POSIX") // set locale to reliable US_POSIX
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"
let date = dateFormatter.date(from: string)!
dateFormatter.dateFormat = "dd-MM-yyyy HH:mm:ss"
dateFormatter.locale = tempLocale // reset the locale
let dateString = dateFormatter.string(from: date)
print("EXACT_DATE : \(dateString)")
关于iOS swift 3 : Convert "yyyy-MM-dd' T'HH:mm:ssZ"format string to date object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41907419/