ich habe folgend dateFormatter
:String Datum Datum gibt falsche Zeit
var date = Date()
var dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let timeZone = NSTimeZone(name:"UTC+01:00")
dateFormatter.timeZone = timeZone as TimeZone!
let sweDate = dateFormatter.string(from: date)
Und wenn ich mich diese Werte erhalte ausdrucken:
1: print(date) // 2016-11-01 10:16:19 +0000
2: print("\(dateFormatter.string(from: date))") // 2016-11-01 11:16:35
3: print(dateFormatter.date(from: sweDate)!) // 2016-11-01 10:16:41 +0000
Der zweite Wert ist die richtige in String-Format, aber wenn ich es in Date()
konvertieren, bekomme ich die falsche Zeit, dritten Druck. Warum passiert das und wie löse ich es? Es ist schwedische Zeitzone.
Ok, also macht es nichts mit dem' dateFormatter.date (from: sweDate)! '' Dann? Wie kann ich den zweiten Wert zu "Date" bekommen? –
"Datum" speichert die Zeitzone nicht, so dass immer die UTC-Zeit gedruckt wird, unabhängig davon, welche Zeitzone beim Formatieren verwendet wurde. – ozgur
@ozgur, ja ich habe es aber wie kann ich den zweiten Wert zu "Date" anstelle von "String" bekommen? –