How can I convert string date to NSDate? How can I convert string date to NSDate? ios ios

How can I convert string date to NSDate?


try this:

let dateFormatter = NSDateFormatter()dateFormatter.dateFormat = /* find out and place date format from                             * http://userguide.icu-project.org/formatparse/datetime                            */let date = dateFormatter.dateFromString(/* your_date_string */)

For further query, check NSDateFormatter and DateFormatter classes of Foundation framework for Objective-C and Swift, respectively.

Swift 3 and later (Swift 4 included)

let dateFormatter = DateFormatter()dateFormatter.dateFormat = /* date_format_you_want_in_string from                            * http://userguide.icu-project.org/formatparse/datetime                            */guard let date = dateFormatter.date(from: /* your_date_string */) else {   fatalError("ERROR: Date conversion failed due to mismatched format.")}// use date constant here


Swift 4

import Foundationlet dateString = "2014-07-15" // change to your date formatvar dateFormatter = DateFormatter()dateFormatter.dateFormat = "yyyy-MM-dd"let date = dateFormatter.date(from: dateString)println(date)

Swift 3

import Foundationvar dateString = "2014-07-15" // change to your date formatvar dateFormatter = NSDateFormatter()dateFormatter.dateFormat = "yyyy-MM-dd"var date = dateFormatter.dateFromString(dateString)println(date)

I can do it with this code.


 func convertDateFormatter(date: String) -> String {    let dateFormatter = NSDateFormatter()    dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"//this your string date format    dateFormatter.timeZone = NSTimeZone(name: "UTC")    let date = dateFormatter.dateFromString(date)    dateFormatter.dateFormat = "yyyy MMM EEEE HH:mm"///this is what you want to convert format    dateFormatter.timeZone = NSTimeZone(name: "UTC")    let timeStamp = dateFormatter.stringFromDate(date!)    return timeStamp}

Updated for Swift 3.

func convertDateFormatter(date: String) -> String{    let dateFormatter = DateFormatter()    dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"//this your string date format    dateFormatter.timeZone = NSTimeZone(name: "UTC") as TimeZone!    let date = dateFormatter.date(from: date)    dateFormatter.dateFormat = "yyyy MMM EEEE HH:mm"///this is what you want to convert format    dateFormatter.timeZone = NSTimeZone(name: "UTC") as TimeZone!    let timeStamp = dateFormatter.string(from: date!)    return timeStamp}