简体   繁体   English

从星期数获取开始日期

[英]Get start date from week number

I've been trying and searching for over two days now. 我一直在尝试并搜索超过两天。

The only thing I'm trying is to convert a week number "Week 50" to the start date of the week. 我要尝试的唯一操作是将周数“第50周”转换为该周的开始日期。

I've tried to convert with dateFromString like this: 我试图用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];

But both objects return (null) so it isn't of many help. 但是两个对象都返回(空),因此它没有太多帮助。

Regards 问候

Have you tried the following: 您是否尝试过以下方法:

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

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

You can try trimming the string to just the week number like "50" and then add the desired year number and use following: 您可以尝试将字符串修整为仅类似于“ 50”的星期数,然后添加所需的年份数并使用以下命令:

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM