Я создал plist, который инициализируется как массив массивов словарей.Plist хранит динамические данные.Следовательно, когда приложение завершает работу, могут быть добавлены новые элементы словаря.Или могут быть добавлены новые массивы элементов словаря.Позже может быть меньше элементов словаря, так что предыдущие элементы больше не требуются.Несмотря на то, что существует много дискуссий о добавлении элементов в список, ни один из них не решает мою проблему.Вот начальное описание plist:
Key Type Value
Root Dictionary (2 items)
Hourly Data Array (1 item)
Item 0 Array (1 item) <--how do I add more of these
Item 0 Dictionary (3 items) <--how do I add more of these
Name String Joe
Rank String private
serialNo String 123456
NonHourly Data Array (1 item)
Item 0 Array (1 item)
Item 0 Dictionary (3 items)
Name String Jeff
Rank String private
serialNo String 654321
Хотя я полностью понимаю, как читать в этом файле plist, я не понимаю, как добавлять элементы массива в массивы Hourly и NonHourly Data или как добавлять новыеЭлементы массива словаря, а затем запишите их обратно в список.
Итак, учитывая следующий код в качестве отправной точки, как мне завершить этот код, чтобы добавить элементы массива и элементы словаря, описанные выше:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); // Create a list of paths
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *configPlist = [documentsDirectory stringByAppendingPathComponent:@"config.plist"];
NSFileManager *fileManager = [NSFileManager defaultManager];
NSMutableDictionary *data = [[NSMutableDictionary alloc] initWithContentsOfFile: configPlist];
...
[data writeToFile: configPlist atomically:YES];