1

I'm storing some dates in coredata in Date format. In another viewcontroller, I want to retrieve those dates and convert them to string. I tried to achieve it like so...

if let bday = result.birthday {

print(bday)
let formatter = DateFormatter()
let bDateString = formatter.string(from: bday as Date)
print(bDateString)
self.birthdate = bDateString

}

Here, printing bday gives the proper date. But printing bDateString after converting to string gives nil. What am I doing wrong...?

2 Answers2

2

Please provide format of date like this :

formatter.dateFormat = "MM-dd-yyyy" //provide your date format here
Jayesh Thanki
  • 2,037
  • 2
  • 23
  • 32
0

The issue is you have not provided date format.

Even you can use this extension

extension Date {    static func getFormattedDate(string: String) -> String{
        let dateFormatter = DateFormatter()
        dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss +zzzz" // This formate is input formated .

        let formateDate = dateFormatter.date(from:"2018-02-02 06:50:16 +0000")!
        dateFormatter.dateFormat = "dd-MM-yyyy" // Output Formated

        print ("Print :\(dateFormatter.string(from: formateDate))")//Print :02-02-2018
        return dateFormatter.string(from: formateDate)
    } }
Moin Shirazi
  • 4,372
  • 2
  • 26
  • 38