2010-02-05 4 views

Répondre

2
NSString *path = @"path/to/some/file"; 
NSMutableDictionary *plist = [[NSDictionary dictionaryWithContentsOfFile:path] mutableCopy]; 
[plist setObject:@"foo" forKey:@"aKey"]; 
[plist writeToFile:path atomically:YES]; 
[plist release]; 

Notez que vous ne pouvez pas écrire dans votre propre paquet; vous devrez copier le fichier dans le bac à sable de votre application. Découvrez la fonction NSSearchPathForDirectoriesInDomains.

+0

Salut, merci pour votre exemple de code, mais je ne peux pas le faire fonctionner de cette façon. Si j'essaie comme vous l'avez décrit dans votre exemple, il définit simplement la valeur de la clé, mais j'essaie d'ajouter une sous-clé (ajouter une sous-clé (tableau) films à la première clé, qui est généralement la clé racine) . – Sean

+1

ok, j'ai résolu mon problème. Au lieu d'essayer de créer une clé par programme dans un fichier plist qui se trouve dans le répertoire des documents de l'application, j'ai créé un fichier plist avec la clé manuellement dans le dossier de ressources et puis copiez ce fichier dans le répertoire des documents. – Sean

+1

Le code de Noah devrait fonctionner, avec les valeurs de Dictionnaires mutables pour les clés peuvent être des pointeurs vers d'autres tableaux ou dictionnaires. Par exemple: [plist setObject: moviesArray forKey @ "Films"] ferait ce que vous demandez. Si la clé de films n'existe pas, elle le crée. –

Questions connexes