转换datestringswift

我有这种格式的datestring:

2016-06-20T13:01:46.457+02:00 

我需要改变它是这样的:

 20/06/2016 

以前,我一直使用这个库 – “ SwiftDate来操纵date,但现在不工作。

我也试过类似的东西:

 let myDate = self.dateNoteDict[indexPath.row]! let dateFormatter = NSDateFormatter() dateFormatter.dateFormat = "yyyy-MM-dd hh:mm:ss.SSSSxxx" let date = dateFormatter.dateFromString(myDate) print("date -> \(date)") 

但它不起作用。 我能怎么做?

提前致谢。

具有小数秒和时区的标准ISO8601date格式是

YYYY-MM-dd'T'HH:MM:ss.SSSZ

 let myDate = "2016-06-20T13:01:46.457+02:00" let dateFormatter = NSDateFormatter() dateFormatter.locale = NSLocale(localeIdentifier: "en_US_POSIX") // edited dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ" let date = dateFormatter.dateFromString(myDate)! dateFormatter.dateFormat = "dd/MM/yyyy" let dateString = dateFormatter.stringFromDate(date) 

Swift 3:

 let myDate = "2016-06-20T13:01:46.457+02:00" let dateFormatter = DateFormatter() dateFormatter.locale = Locale(identifier: "en_US_POSIX") // edited dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ" let date = dateFormatter.date(from:myDate)! dateFormatter.dateFormat = "dd/MM/yyyy" let dateString = dateFormatter.string(from:date) 

我总是使用此代码,同时将String转换为Date 。 ( Swift 3

 extension String { func toDate( dateFormat format : String) -> Date { let dateFormatter = DateFormatter() dateFormatter.dateFormat = format if let date = dateFormatter.date(from: self) { return date } print("Invalid arguments ! Returning Current Date . ") return Date() } } 

只是打电话就好。 。

 print ( "2016-06-20T13:01:46.457+02:00".toDate(dateFormat: "yyyy-MM-dd'T'HH:mm:ss.SSSZ") ) //Capital HH for 24-Hour Time