現在の週を取得する必要のあるアプリを開発します。私はこれを試しました:objective-cの現在の週の番号を取得するには?
- (void)viewDidLoad
{
[super viewDidLoad];
NSString *dateString = @"1-1-2011";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd-MM-yyyy"];
NSDate *dateFromString = [[NSDate alloc] init];
dateFromString = [dateFormatter dateFromString:dateString];
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *comp = [gregorian components:NSWeekCalendarUnit fromDate:dateFromString];
NSLog(@"%d", comp.week);
[dateFormatter release];
}
しかし、それは私に52を示しています。実際には間違った結果です。私に何か考えを提案してください。 ありがとうございます。
年が土曜日に始まるのはどうですか?今週は最初のことではありません。前年の最後= 52週目です:)。 – JakubKnejzlik
@GrizzlyNetch:ISO-8601の番号付けでは前年の52番目です。それは、米国の番号付けでは初めてのことです。それから、米国の週は日曜日から始まるという事実があります。そして明らかに物事をもっと混乱させるだけの周りには、いくつかの週番号システムがあります:http://en.wikipedia.org/wiki/Seven-day_week#Week_numbering(おそらく、週番号はDSTに悩むという点で唯一のものです – millimoose