Question

Je développe une application iPhone, dans lequel je veux utiliser un fichier .plist pour enregistrer certaines variables de configuration.

dans mon Xcode où créer ce fichier .plist et comment y accéder ???

merci,

Était-ce utile?

La solution

Vous mettriez dans le dossier des ressources. Ensuite, utilisez quelque chose comme ça pour le charger:

NSString *file = [[NSBundle mainBundle] pathForResource:@"TwitterUsers" ofType:@"plist"];
NSArray *Props = [[NSArray alloc] initWithContentsOfFile:file];

Où TwitterUsers est le nom de votre fichier plist.

Si votre fichier plist contient les clés et les valeurs que vous feriez la deuxième ligne un NSDictionary au lieu de NSArray.

Autres conseils

Pour enregistrer le fichier plist dans votre répertoire Documents vous devrez inclure fichier plist dans votre application, puis lors du premier lancement copier dans le répertoire des documents.

Pour accéder au fichier dans le répertoire Documents:

NSArray *paths = 
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, 
                                    NSUserDomainMask, YES); 
NSString *documentsPath = [paths objectAtIndex:0]; 

// <Application Home>/Documents/foo.plist 
NSString *fooPath = 
[documentsPath stringByAppendingPathComponent:@“foo.plist”];

Je le recommande maintenant dans le répertoire des ressources dans le paquet de l'application, mais vous pouvez simplement faire glisser dans la fenêtre du projet. La méthode NSBundle pathForResource:ofType: devrait vous donner un chemin, que vous pouvez passer à la NSDictionary de dictionaryWithContentsOfFile:.

Edit: Désolé, échantillon complet de code (pensé que je l'avais déjà copiée et collée):

NSString *path = [[NSBundle mainBundle] pathForResource:@"MyConfig" ofType:@"plist"];
NSDictionary *myConfig = [NSDictionary dictionaryWithContentsOfFile:path];

EDIT Il suffit de se est produite à moi "variables de configuration" pourrait ne pas être immuable. Si tel est le cas, ne pas tenir compte de cette réponse.

Je vous recommande d'utiliser NSUserDefaults pour stocker les variables de configuration au lieu de rouler votre propre système.

Si vous modifiez un .plist dans votre paquet d'applications, vous risquez invalider la signature sur le paquet, tout en ne se terminera pas bien.

Si vous devez stocker et modifier votre propre .plist, rangez-le dans le répertoire Documents, qui est également l'endroit où votre application doit stocker tout ce qu'il télécharge, crée, etc. Voir fichier et gestion des données et NSFileManager .

Par défaut, si vous avez inclus le plist dans le projet partout (sous la rubrique Ressources ou autre) XCode copie dans le paquet d'application où vous pouvez obtenir avec l'appel pathForResource mentionné ci-dessus. Juste pensé que je mentionner que vous préférez peut-être un groupe où vous ne l'avez pas dans les ressources ...

vous pouvez trouver l'exemple livre sqlite ..... le fichier de données de silte était d'enregistrer dans le répertoire « document » .... vous connaîtrez la prcess

  1. Pourquoi serait-il invalider le paquet?

  2. Est-ce que ce fichier plist dans le dossier des ressources sauvegarder dans iTunes comme les fichiers dans le dossier des documents?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top