I use below code to format a Date and get a wrong date string.
let formatter = DateFormatter()
formatter.timeZone = TimeZone(identifier: "UTC")
formatter.dateFormat = "YYYY-MM-dd"
let dateStr = formatter.string(from: date) // 2012-12-31 07:52:49 +0000
then dateStr is '2013-12-31'.
Anyone has ideas about it?