我想從週數和年份中獲取日期。我從服務器獲得了週數和年份。我是 嘗試下面的代碼,但它不會工作。如何從週數和年份獲取日期
NSDateFormatter *dateFormatter2 = [[NSDateFormatter alloc] init];
// this is imporant - we set our input date format to match our input string
// if format doesn't match you'll get nil from your string, so be careful
[dateFormatter2 setDateFormat:@"yyyy-MM-dd"];
NSDate *now = [dateFormatter2 dateFromString:@"2001-01-01"];
NSCalendar *gregorian1 = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *comps1 = [gregorian1 components:NSWeekdayCalendarUnit | NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit fromDate:now];
[comps1 setYear:2013];
[comps1 setWeek:51];
[comps1 setWeekday:2];
NSDate *resultDate = [gregorian1 dateFromComponents:comps1];
輸出是: - 2012-12-31 18:30:00 +0000
我到底做錯了什麼?在此先感謝..
我剛剛跑過來,得到了不同的答案:'resultdate:2013-01-01 00:00:00 + 0000' – Robert
也許'setWeekOfYear:'? (只是猜測) –
還有這部分文檔:「使用帶日曆年和星期幾的NSCalendar時,使用使用基於星期的日曆常量創建的日曆會導致模糊的日期。」這聽起來像你可能會擊中那一個。 –