Ich habe einen DateFormatter und ich übergebe eine Zeichenfolge von Datum mit einer Absicht, um zu Datum zu transformieren. Das Problem ist, dass dieses Enddatum immer mit 3 Stunden mehr kommt. Das ist mein Code:DateFormatter Hinzufügen von 3 Stunden im Datum Ergebnis
let taskDateFormatter = DateFormatter()
taskDateFormatter.locale = Locale.current
taskDateFormatter.dateFormat = "dd/MM/yyyy HH:mm:ss"
print(task!.logData!)// this print 016/06/2017 10:25:12
let date = taskDateFormatter.date(from: task!.logData!)
print(date!)// this print 2017-06-16 13:25:12 +0000
Was mache ich falsch?
Es gibt keine Fehler hinzuzufügen. Sie befinden sich in der GMT-3-Zeitzone und "(NS) Date" verwendet immer UTC zum Drucken (wie "+0000" anzeigt). –
Mögliches Duplikat von https://stackoverflow.com/questions/6229024/nsdate-format-outputting-wrong-date oder https://stackoverflow.com/questions/29407599/nsdateformatter-return-wrong-date-swift –
Mögliches Duplikat von [NSDate Formatausgabe falsches Datum] (https://stackoverflow.com/questions/6229024/nsdate-format-outputting-wrong-date) – Stonz2