Diferença entre 2 NSDates, excluindo fins de semana?
Pergunta
Para aqueles familiarizados com o Excel, eu estou tentando usar um NETWORKDAYS similiar funcionar dentro do Cacau.
alguém pode ajudar com o tipo de informação que você precisa para construir um catagory NSDate que pode me dar apenas os dias úteis betweek duas datas?
muitos agradecimentos Nik
Solução
Eu sei que eu vou dar não é otimizado, mas é só para lhe dar uma maneira de explorar. Você pode usar o NSCalendar e os NSDateComponents assim:
// Date of today
NSDate *today = [NSDate date];
// init the gregorian calendar
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
// Retrieve the NSDateComponents for the current date
NSDateComponents *weekdayComponents = [gregorian components:(NSDayCalendarUnit | NSWeekdayCalendarUnit) fromDate:today];
// Number of the day in the week (e.g 2 = Monday)
NSInteger weekday = [weekdayComponents weekday];
(veja Os calendários, Data Components, e Calendário Unidades )
De lá você começar a partir de sua primeira data e você iterar isso para cada dia até a data de término e usando o dia da semana você pode determinar se o dia é durante um fim de semana ou não. (Eu repeti que não é otimizado, mas é apenas uma faixa)