-3
I NSString
von Datum habe:NSString zu NSDate gibt falsches Datum
NSString *dateStr = @"Feb-02-17";
Ich versuche es mit dem neuesten Stand zu konvertieren:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"MMM-dd-yy"];
NSDate *yourDate = [dateFormatter dateFromString:dateStr];
Und in yourDate
erhalte ich diesen Wert:
2017-02-01 22:00:00 +0000
Irgendeine Idee, warum es einen Unterschied zwischen den Daten gibt?
Es ist wahrscheinlich Zeitzone Problem. –
Ja, einfach Zeitzone mit der Abkürzung "UTC" zum Formatierer des Datums hinzufügen, es wird nur die UTC-Zeit in die aktuelle Zeitzone umgerechnet. –
Das Datum ist korrekt. 'NSDateFormatter' erstellt das Datum unter Berücksichtigung Ihrer lokalen Zeitzone (UTC +2), aber' print' druckt Datumsangaben in UTC. '2017-02-01 22:00:00 + 0000' und' 2017-02-02 00:00:00 + 0200' ist gleich – vadian