So gibt es wie eine Million verschiedene Möglichkeiten, wie Sie dies tun können, aber das ist wahrscheinlich nicht das, was Sie hier suchen. Der beste Weg, mit diesen Dingen zu spielen, wäre ein Spielplatz, auf dem Sie sehen können, wie die Änderungen an Ihrem Code das Endergebnis beeinflussen.
Also zuerst müssen Sie eine Funktion, die einen String als Parameter nehmen.
func dateFromJSON(dateString: String?) -> NSDate? {}
wird diese Funktion in unserem string
nehmen und bringen Sie uns eine NSDate
Dann brauchen wir ein Datum Formatierer, gibt es viele verschiedene Möglichkeiten, wie Sie ein Datum formatieren können, und Sie können hier auf sie in der Dokumentation überprüfen NSDateFormatter Documentation
so hier ist ein Beispiel für einen Formatierer "yyyy-MM-dd'T'HH:mm:ss.SSSZZZ"
Sie können ziemlich schnell sehen, dass verschiedene Teile auf verschiedene Arten eines Datums beziehen. IE die yyyy
ist für das Jahr in diesem Fall wird uns etwas wie 2016
geben. Wenn es yy
wäre, würden wir nur 16
bekommen.
initialisieren dateFormatter dann unser Format anwenden.
Sie auch in einigen Prüfungen werfen sollten Ihren Code sicherer zu machen. Also sollte es so aussehen.
func dateFromWebJSON(dateString: String?) -> NSDate? {
guard let dateString = dateString else {
return nil
}
let formatter = NSDateFormatter()
let date = ["yyyy-MM-dd'T'HH:mm:ss.SSSZZZ"].flatMap { (dateFormat: String) -> NSDate? in
formatter.dateFormat = dateFormat
return formatter.dateFromString(dateString)
}.first
assert(date != nil, "Failed to convert date")
return date
}
jetzt so können wir
nennen
let time = dateFromWebAPIString(date)
print(time) // Jul 21, 2016, 12:32 PM
Jetzt Zeit, die Sie dürfen nicht vergessen, hinzuzufügen, dass 1 NSTimeInterval 1 Sekunde. So haben einige grundlegende mathematische
let min = 60
let hr = 60 * min
dann können wir so viel Zeit hinzufügen, wie Sie wollen
let newTime = time?.dateByAddingTimeInterval(NSTimeInterval(20 * min))
print(newTime) // "Jul 21, 2016, 12:52 PM"
20 min später. Hoffe, das hilft
einfach Ihr Zeichenfolge Datum und Verwendung Kalender-Methode dateByAddingUnit konvertieren Minuten, um es hinzuzufügen. –
Das habe ich noch nie gemacht, wie machst du das? – SwiftyJD
http://StackOverflow.com/a/30269467/2303865 –