2016-12-09 28 views
9

Mam rozejrzał się trochę, ale nie znalezienia szybkiej odpowiedzi na to w szybkim 3. uzyskać dzisiejszą tygodnia tak:Otrzymuj codziennie od Date - Swift 3

let weekday = Calendar.current.component(.weekday, from: Date()) 

Ale zamiast tego, chciałbym dostać dzień powszedni danej daty. Jak to się robi? Thanx

+2

ten sam sposób. Jaki jest problem? Po prostu użyj "danej daty" zamiast "Date()". – matt

Odpowiedz

26

Prawdopodobnie już masz Date?

let weekday = Calendar.current.component(.weekday, from: myDate) 

Może chcesz nazwę dnia tygodnia?

let f = DateFormatter() 

f.weekdaySymbols[Calendar.current.component(.weekday, from: Date())] 

Zbadaj NSCalendar/DateComponents api lub edytować swoje pytanie być bardziej szczegółowe, jeśli potrzebujesz pomocy z api DateComponents.

+3

Używanie 'Kalendarza' jako '.iso8601' i UTC Data, którą indeks otrzymałem z mojego kalendarza, musi zostać odjęty przez 1. Gdy Data była niedziela, otrzymałem indeks poza zakresem na' f.shortWeekdaySymbols [dayIndex] ' ponieważ mój indeks dnia był "7" –

+0

prawo, -1, aby być w granicach tablicy. – SoftDesigner

10
let date = Date() 
let dateFormatter = DateFormatter() 
dateFormatter.dateFormat = "dd-MM-yyyy" 

dateFormatter.dateFormat = "EEEE, MMMM dd, yyyy" 
let currentDateString: String = dateFormatter.string(from: date) 
print("Current date is \(currentDateString)") 

Aktualna data jest poniedziałek, 29 czerwca 2017