Ich habe dateformat Zeichenfolge wie diese "2015-03-09" .Wie bekomme ich nächste 10 Tage Datum ab dem aktuellen Datum? Jede Hilfe wird geschätzt werden.Danke im VorausWie bekomme ich die nächsten 10 Tage vom aktuellen Datum in swift
Antwort
Es gibt eine Funktion 'dateByAddingTimeInterval()' für ein NSDate-Objekt. Damit können Sie ein NSDate aus Ihrer Datumszeichenkette erstellen. Dann 10 Tage hinzufügen = 10 * 24 * 60 * 60 nächsten 10 Tage NSDate Wert
let today : NSDate = ....
let next10days = today.dateByAddingTimeInterval(10*60*60*24); //interval = seconds
//then you convert back to your date string format if you want, by using NSDateFormatter
Um zu vermeiden Problem mit DaylightTime Speicher (@MartinR) zu erhalten:
let cal = NSCalendar(calendarIdentifier: NSGregorianCalendar)
let next10Days = cal.dateByAddingUnit(NSCalendarUnit.DayCalendarUnit, value: 10, toDate: today, options: nil)
Nein, ein Tag ist nicht dasselbe wie 60 * 60 * 24 Sekunden. In Regionen mit Sommerzeit kann ein Tag 23 oder 25 Stunden haben. –
Ja, diese Lösung wird einen 'Fehler' haben, wenn wir zu Sommerzeit oder Winterzeit wechseln. Wir sollten NSCalendar verwenden. –
speicherte meine Zeit :) – Anton
Sie verwenden, um die dateByAddingTimeInterval() Methode dafür.
var dateStr = "2015-03-09"
var formatter = NSDateFormatter()
formatter.dateFormat = "YYYY-MM-dd"
var currDate = formatter.dateFromString(dateStr)
for i in 1...10
{
var interval = NSTimeInterval(60 * 60 * 24 * i)
var newDate = currDate?.dateByAddingTimeInterval(interval)
println(newDate)
}
EDIT:
Wie @ Martin R in den Kommentaren erwähnt, wird es besser sein dateByAddingComponents() von NSCalendar Klasse zu verwenden:
var calendar = NSCalendar(calendarIdentifier: NSGregorianCalendar)
var dateComponent = NSDateComponents()
for i in 1...10
{
dateComponent.day = i
var newDate = calendar?.dateByAddingComponents(dateComponent, toDate: currDate!, options:nil)
println(newDate)
}
Mein Kommentar zu der anderen Antwort gilt auch hier. –
@MartinR: Er braucht nur die nächsten 10 Termine, oder? Es gibt keine Zeit in der Datumszeichenkette, die er hat. Also denke ich, dass das in diesem Fall kein Problem verursachen wird. Korrigieren Sie mich, wenn ich falsch liege –
Die richtige Methode zum Hinzufügen eines Tages ist die Verwendung von NSCalendar und NSDateComponents. –
Hier ist, wie ein Datum erhalten In 10 Tagen, mit eingebauter Datumsmodifikationsmethode .dateByAddingUnit Wenn alle 10 Tage (Daten) benötigt werden, können sie durch den "value: 10" -Teil geloopt und zum Array hinzugefügt werden.
var tenDaysfromNow: NSDate {
return NSCalendar.currentCalendar().dateByAddingUnit(.Day, value: 10, toDate: NSDate(), options: [])!
}
print(tenDaysfromNow)
Und für swift3:
var tenDaysfromNow: Date {
return (Calendar.current as NSCalendar).date(byAdding: .day, value: 10, to: Date(), options: [])!
}
Kalender hat kein Mitglied 'dateByAddingUnit' –
Natürlich. Das war Swift2. Jetzt für Swift 3: var tenDaysfromNow: Datum { return (Calendar.current als NSCalendar) .date (durch Hinzufügen: .day, value: 10, to: Date(), options: [])! } – thinkswift
Was wäre der richtige Weg, um die nächsten 10 Tage ab einem bestimmten Datum zu bekommen? Swift 3-Antwort in einer Funktion verwenden. Zum Beispiel: 'fun getTenDaysFromDate (Datum: Datum) -> Datum {...}' –
Für Swift 3:
let now = NSDate()
let plusTen = now.dateByAddingDays(10)
NSDate hat kein Mitglied 'dateByAddingDays'. Sie müssen dazu eine Erweiterung verwenden. –
Für eine rein Swift 3 Lösung:
Calendar.current.date(byAdding: .day, value: 10, to: Date())
- 1. deaktivieren nächsten 10 Tage in jQuery UI Datepicker
- 2. Moment JS - Wie subtrahiert man 7 Tage vom aktuellen Datum?
- 3. Wie kann ich die letzten 7 Tage in einem Array vom aktuellen Datum erhalten?
- 4. Wie erhalte ich die letzten 7 Tage Daten vom aktuellen Datum in SQL Server?
- 5. , wie die Tage in aktuellen Datum hinzufügen asp.net mit
- 6. Wie bekomme ich das Datum, welches die Summe eines vorherigen Datums ist, auf 7 Tage des nächsten Datums?
- 7. Python: Wie bekomme ich die Anzahl der Tage vom festen Datum der Vergangenheit bis jetzt
- 8. PHP: Wie bekomme ich die Tage der Woche?
- 9. Wie bekomme ich die nächsten sieben Tage von X und Format in JS
- 10. Dataweave - keine Tage vom Datum abziehen
- 11. So erhalten Sie die nächsten 10 Daten von heute (lokal)
- 12. Wie bekomme ich die Anzahl der Tage für den nächsten Monat?
- 13. Wie bekomme ich alle Tage im aktuellen Monat?
- 14. Deaktiviere die nächsten Jahre vom aktuellen Jahr in bootstrap datetimepicker
- 15. Wie bekomme ich das Datum von heute -30/-60 Tage?
- 16. Wie kann ich vom heutigen Datum -30 Tage von meiner Datenbank abziehen, die (Datum)
- 17. Anzahl der Tage zwischen dem aktuellen Datum und Datum Feld
- 18. Wie bekomme ich das Datum dieser Woche vom Tag
- 19. Wie bekomme ich den aktuellen Standort in Swift iOS Programmierung?
- 20. Wie bekomme ich das Montag-Datum der aktuellen Woche in swift
- 21. Wie bekomme ich das Datum vom Datetime-Format
- 22. SQL - Datum suchen, das dem aktuellen Datum am nächsten ist
- 23. Wie bekomme ich die Anzahl der Tage des aktuellen Monats? in PHP
- 24. Wie bekomme ich die Anzahl der Tage ab dem ersten Tag des Monats mit datediff
- 25. Wie bekomme ich das Datum im UTC-Format unabhängig vom aktuellen Systemdatum mit Javascript?
- 26. Wie bekomme ich den aktuellen Wert vom ReactiveCooco Signal?
- 27. Wie bekomme ich die aktuelle Zeit vom Server?
- 28. Datumsauswahl jquery - Wie nächsten 5 Tage
- 29. Get Datum der letzten 7 Tage von aktuellen in Android
- 30. Wie man 7 Tage vom aktuellen Datum in IOS zeigt, wenn heute der letzte Tag des Monats ist
Sie nächsten 10 Tage So brauchen von diesem Datum? –
Sie haben Apples "Date and Time Programming Guide" gelesen, nicht wahr? Was hast du versucht und wo steckst du fest? –