Я попробовал код на другом Mac, и там он работает. Это тот же проект.
Может кто-нибудь объяснить мне, почему plist создается на одном Mac, а не на другом?
на айфоне тоже никакой плист не написано?
Я полагаю, что в обоих случаях это объясняется тем, что массив, который я пишу в plist, пуст:
NSString *rootPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *plistPath = [rootPath stringByAppendingPathComponent:@"list.plist"];
NSMutableArray *currentArray = [[NSMutableArray alloc] initWithContentsOfFile:plistPath];
NSMutableDictionary *dictionary = [NSMutableDictionary dictionaryWithObjectsAndKeys:
[selectet valueForKey:NAME], @"name",
nil];
NSLog(@" DIC. : %@", dictionary);
[currentArray addObject:[dictionary copy]];
NSLog(@" %@", currentArray);
[currentArray writeToFile:plistPath atomically:YES];
[currentArray release];
в словаре есть запись, но currentArray пусто ....
И все же это работает на одном Mac. но не на другом а на айфоне.
Редактировать:
По какой-то причине это снова заработало.
Чтобы быть уверенным, что я удалил plist из папки документов и очистил все цели.
И теперь проблема, как и раньше, я могу записать список только тогда, когда пишу в него словарь, но тогда я могу сохранить только последний.
И чтение списка не сработает.
Может кто-нибудь сказать мне, почему это происходит и как я могу это решить?
Редактировать 2:
Я обнаружил проблему: поскольку X-код не создает список, когда я записываю массив со словарем в список. Когда я записываю словарь в список, X-код создает список, но с корнем словаря поэтому я не могу записать массив в него, и я также не могу прочитать его в массиве .....
Я создал plist в папке Resources с корневым массивом и скопировал его, когда он не существует в папку документов, и теперь он работает .....
Разве это не удивительно, как такие простые вещи могут вызвать у вас такую головную боль