Взгляните на следующие методы в NSUserDefaults:
- (NSDictionary *)persistentDomainForName:(NSString *)domainName;
- (void)setPersistentDomain:(NSDictionary *)domain forName:(NSString *)domainName;
- (void)removePersistentDomainForName:(NSString *)domainName;
Они позволяют вам читать и записывать в файл настроек с заданным доменным именем. Примером является чтение некоторых общих настроек для Apple iApps:
NSUserDefaults* prefs = [ NSUserDefaults standardUserDefaults ];
NSDictionary* iAppsPrefs = [ prefs persistentDomainForName: @"com.apple.iApps" ];
NSArray* recentPaths = [ iAppsPrefs objectForKey: @"iTunesRecentDatabasePaths" ];
Предыдущий код считывает массив последних путей к файлам базы данных iTunes.
Недостатком этих методов является то, что они читают и записывают все содержимое файла. Если количество сохраняемых элементов не очень велико, то обычно это не проблема.