Сбой массива - PullRequest
       6

Сбой массива

0 голосов
/ 06 июля 2011

При добавлении значений Nsdate в NSmutablearray мое приложение выходит из строя.

 - (void)viewDidLoad {


markarry=[[NSMutableArray alloc]init];

HolidayAppDelegate *delegatObj = (HolidayAppDelegate *)[UIApplication sharedApplication].delegate;

for (int i=0;i<[delegatObj.Datearray count]; i++) {

    NSString *Str=[delegatObj.Datearray objectAtIndex:i];

    NSLog(@"dates %@",Str);
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"MMMM-dd-yyyy"];

    NSDate *dateFromString;
    dateFromString = [dateFormatter dateFromString:Str];

    NSLog(@"date type %@",dateFromString);
    [markarry addObject:dateFromString];
    [dateFromString release];
    [Str release];

}
}

Если я не освобождаю dateFromString и Str, оно также выходит из строя.Помогите мне здесь.

Это ошибка, которую я получаю на консоли.

    Terminating app due to uncaught exception 'NSInvalidArgumentException', 
   reason:    -[NSMutableArray insertObject:atIndex:]: attempt to insert nil object
   at 12' Call stack at first throw:

Ответы [ 2 ]

0 голосов
/ 06 июля 2011

Ну, как исключение, вы получаете ясно состояния, вы пытаетесь вставить nil объект в NSMutableArray.

Так что я предполагаю [dateFormatter dateFromString:Str]возвращает nil, и вы не должны вставлять его в массив.

0 голосов
/ 06 июля 2011
reason:    -[NSMutableArray insertObject:atIndex:]: attempt to insert nil object

dateFromString вернет nil, если строка не является допустимой датой. Так что я предполагаю, что он возвращает ноль, и это вызывает исключение.

Редактировать: ММММ действительно то, что вы хотите? Смотри: http://unicode.org/reports/tr35/tr35-10.html#Date_Format_Patterns

Редактировать: Да, ММММ - это то, что вы хотели. Хммм.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...