我将如何从日期转换此日期时间?
自此:2016-02-29 12:24:26 至:2016 年 2 月 29 日
到目前为止,这是我的代码,它返回一个 nil 值:
let dateFormatter = NSDateFormatter() dateFormatter.dateFormat = "MM-dd-yyyy" dateFormatter.timeZone = NSTimeZone(name: "UTC") let date: NSDate? = dateFormatter.dateFromString("2016-02-29 12:24:26") print(date)
您必须声明 2 个不同NSDateFormatters的,第一个将字符串转换为 a NSDate,第二个以您的格式打印日期。 试试这个代码:
NSDateFormatters
NSDate
let dateFormatterGet = NSDateFormatter() dateFormatterGet.dateFormat = "yyyy-MM-dd HH:mm:ss" let dateFormatterPrint = NSDateFormatter() dateFormatterPrint.dateFormat = "MMM dd,yyyy" let date: NSDate? = dateFormatterGet.dateFromString("2016-02-29 12:24:26") print(dateFormatterPrint.stringFromDate(date!))
Swift 3 及更高版本:
从 Swift 3NSDate类已更改为Date和。NSDateFormatter``DateFormatter
Date
NSDateFormatter``DateFormatter
let dateFormatterGet = DateFormatter() dateFormatterGet.dateFormat = "yyyy-MM-dd HH:mm:ss" let dateFormatterPrint = DateFormatter() dateFormatterPrint.dateFormat = "MMM dd,yyyy" if let date = dateFormatterGet.date(from: "2016-02-29 12:24:26") { print(dateFormatterPrint.string(from: date)) } else { print("There was an error decoding the string") }