0

11-jan-2012 と 15-jan-2012 のような 2 つの NSDate 値を 11-15-jan-2012 として連結するためのデフォルト機能があることを混乱させました。また、2012 年 1 月 11 日および 2012 年 7 月 15 日を 2012 年 1 月 15 日として。事前にThx。

4

2 に答える 2

2

簡単です..日、月、年を取得できます

NSDateComponents *components = [[NSCalendar currentCalendar] components:NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit fromDate:[NSDate date]];
NSInteger dayM = [components day];    
NSInteger monthM = [components month];
NSInteger yearM = [components year];

これらの日ごとにこれを作成できNSDateます。フォーマットで日付を変更し、必要に応じて各日を連結するだけです

于 2012-06-19T08:35:37.993 に答える
1

このコードを使用できます

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"dd-MMM-yyyy"];
NSDate *date1 = [formatter dateFromString:@"11-jan-2012"];
NSDate *date2 = [formatter dateFromString:@"15-jan-2012"];

NSDateComponents *dateComponents;
dateComponents = [[NSCalendar currentCalendar] components:NSYearCalendarUnit |NSDayCalendarUnit | NSMonthCalendarUnit  
                                                 fromDate:date1];
int day1 = [dateComponents day];    
int month1 = [dateComponents month];
int year1 = [dateComponents year];

dateComponents = [[NSCalendar currentCalendar] components:NSYearCalendarUnit |NSDayCalendarUnit | NSMonthCalendarUnit  
                                                 fromDate:date2];
int day2 = [dateComponents day];    
int month2 = [dateComponents month];
int year2 = [dateComponents year];

NSString *str = [NSString stringWithFormat:@"%d - %d %d %d", day1, day2, month1, year1];
于 2012-06-19T08:39:18.050 に答える