2016-12-09 27 views
9

Ben biraz etrafına baktı, ama ben böyle bugünün hafta içi olsun hızlı 3'te bunun için hızlı bir cevap bulamadık:tarihi Weekday alın - Swift 3

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

Ama bunun yerine, ben istiyorum belirli bir tarihin hafta gününü al. Bu nasıl yapılır? Thanx

+2

aynı yoldur. Sorun ne? Sadece "Tarih()" yerine "verilen tarihi" kullanın. – matt

cevap

26

Muhtemelen Date zaten var mı?

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

Belki hafta içi gününün adını ister misiniz?

let f = DateFormatter() 

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

NSCalendar/ DateComponents api araştırın veya DateComponents API ile yardıma ihtiyacınız varsa daha spesifik olması sorunuzu düzenleyin.

+3

'Takvim'i' .iso8601' ve bir UTC Tarihini kullanarak, Takvimimden aldığım indeksin 1'e çıkarılması gerekiyor. Tarih Pazar olduğunda, bir fasıla bir aralık dışında "f.shortWeekdaySymbols [dayIndex]" Çünkü Gün İndeksim, '7' –

+0

Sağ, -1 dizisi sınırları içerisindeydi. – 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)") 

Güncel tarih Pazartesi, Haziran 29, 2017