I'm facing a problem that timeIntervalSince1970
returns the wrong year.
Here is my code
func unixToDateString(timeStamp: TimeInterval) -> String {
let date = Date(timeIntervalSince1970: timeStamp)
let dateFormatter = DateFormatter()
dateFormatter.locale = Locale(identifier:Locale.current.identifier)
dateFormatter.dateFormat = "MM/dd/YYYY"
return dateFormatter.string(from: date)
}
and these are my results
unixToDateString(timeStamp: 1505896961.0)
returns
09/20/2017
which is correct
but,
unixToDateString(timeStamp: 1546214400.0)
unixToDateString(timeStamp: 4133894400.0)
returns
12/31/2019
12/31/2101
they both return extra one year according to Epoch Unix Time Stamp Converter
1546214400.0 = 12/31/2018
4133894400.0 = 12/31/2100
Does anyone have the same situation?