从周数获取开始日期

时间:2011-12-15 09:10:13

标签: iphone objective-c ios

我一直在努力寻找两天以上。

我唯一想做的就是将周数“周50”转换为一周的开始日期。

我尝试使用dateFromString进行转换:

        NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
        [dateFormat setDateFormat:@"w"];
        NSDate *date = [dateFormat dateFromString:dateStr]; 
        NSLog(@"date(%@)", date);
        NSDateFormatter *formatting = [[NSDateFormatter alloc] init];
        [formatting setDateFormat:@"YYYY/MM/dd"];
        NSString *stringDate = [formatting stringFromDate:date];
        NSLog(@"date: %@", stringDate);
        [dateFormat release];

但是两个对象都返回(null)所以它没有多少帮助。

此致

2 个答案:

答案 0 :(得分:5)

您是否尝试过以下操作:

NSDateComponents *comps = [[NSDateComponents alloc] init];
[comps setYear:2012];
[comps setWeek:50];

NSCalendar *cal = [NSCalendar currentCalendar];
NSDate *week50 = [cal dateFromComponents:comps];

答案 1 :(得分:0)

您可以尝试将字符串修剪为像“50”这样的周数,然后添加所需的年份编号并使用以下内容:

NSString *dateStr=@"50 2011";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"w YYYY"];
NSDate *date = [dateFormat dateFromString:dateStr]; 
NSLog(@"date(%@)", date);