从周数获取开始日期



我已经找了两天了。

我要做的唯一一件事就是将周数"第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),所以没有多大帮助。

您试过以下方法吗:

NSDateComponents *comps = [[NSDateComponents alloc] init];
[comps setYear:2012];
[comps setWeek:50];
NSCalendar *cal = [NSCalendar currentCalendar];
NSDate *week50 = [cal dateFromComponents:comps];

您可以尝试将字符串修剪为周数,如"50",然后添加所需的年份数,并使用如下:

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

最新更新