2010-11-08 4 views
1

Je voudrais simplement créer un fichier qui reste après le programme se ferme. Je voudrais qu'il contienne des objets que j'ai initiés, est-ce possible? Ou faut-il simplement avoir du texte? Comment puis-je accéder à ce fichier plus tard? Aussi, est-ce fait de la même manière sur le Mac et l'iPhone?Stocker des données sur Objective-C

Répondre

0

J'ai utilisé SQLitePersistentObjects dans le passé pour donner ma classe Objective-C des objets une sensation ORM-esque et le comportement. Les objets eux-mêmes se traduisent par des tables correspondantes dans la base de données, qui dans ce cas est un simple fichier de base de données SQLite.

1

Oui! C'est possible. Dérivez les objets que vous souhaitez persister du NSCoding. Sur ces objets, implémentez les fonctions initWithCoder et encodeWithCoder sur ces objets. Dans ces fonctions, écrivez tous vos types primitifs au codeur (ou lisez-les) en utilisant les fonctions ici http://developer.apple.com/library/ios/#documentation/cocoa/reference/foundation/Classes/NSCoder_Class/Reference/NSCoder.html

Lorsque vous souhaitez enregistrer votre fichier, utilisez un NSKeyedArchiver et transmettez l'objet que vous souhaitez archiver le long de w/le nom du fichier.

[NSKeyedArchiver archiveRootObject:root toFile:string]; 

D'autres exemples ici https://stackoverflow.com/questions/2805026/iphone-problem-in-saving-file-using-nscoding

Questions connexes