2013-09-04 3 views
0

У меня есть словарь со строкой и файлом (может быть png или запись). я должен извлечь их, и я делаю это следующим образом:Извлечь файлы из NSDictionary

NSDictionary *myDictionary = (NSDictionary*) [NSKeyedUnarchiver unarchiveObjectWithData:context]; 
NSString *Name = [[myDictionary objectForKey:@"fileName"] objectAtIndex:0]; 
NSData *File = [[myDictionary objectForKey:@"FileData"] objectAtIndex:0]; 

Но приложение падает на NSString * Имя = [[MyDictionary objectForKey: @ "FileName"] objectAtIndex: 0] ;. Это правильно?

+1

Зачем? Вы сделали 'po myDictionary', чтобы увидеть содержимое? –

+1

NSLog myDictionary, чтобы увидеть, что он содержит. –

ответ

1

Просто попробуйте следующее, чтобы получить данные из myDictionary:

NSString *Name = [myDictionary objectForKey:@"fileName"]; 
NSData *File = [myDictionary objectForKey:@"FileData"]; 

Вам не нужна objectAtIndex: 0 обертку, если это не уровень вниз.

Обычно NSArray (или NSMutableArray), которые используют объектAtIndex в качестве массивов, используют индексные ключи. Словари используют objectForKey

Смежные вопросы