let calendar = Calendar.current
var dateComponents = DateComponents()
dateComponents.weekday = calendar.firstWeekday
dateComponents.weekOfYear = 2
dateComponents.year = 2017
let startOfWeek = calendar.date(from: dateComponents)
let endOfWeek = calendar.date(byAdding: .day, value: 6, to: startOfWeek!)
let formatter = DateFormatter()
formatter.dateStyle = .short
print(formatter.string(from: startOfWeek!))
print(formatter.string(from: endOfWeek!))
druk:Pierwsze niepoprawne daty rozpoczęcia i zakończenia z weekOfYear
1/8/17
1/14/17
kod zmiana:
dateComponents.weekOfYear = 1
dateComponents.year = 2017
druk:
12/31/17
1/6/18
dlaczego 31.12.17?
ktoś mi powiedzieć? Dziękuję bardzo.
try bez krótkich formatów, wydrukować pełną datę –
użyj [ 'yearForWeekOfYear'] (https://developer.apple.com/reference/foundation/datecomponents/1779818-yearforweekofyear) zamiast 'year' podczas pracy z' weekOfYear'. – user28434
dziękuję bardzo – 7owen