从plist到NSArray读取对象

xon*_*rlz 3 iphone objective-c ipad ios

我希望有一个NSMutableArray患者,但我不想硬编码患者信息(名称,dob等).我想将它存储在plist中,然后能够拥有一个NSArray of Patients对象.我怎样才能做到这一点?我知道怎么做,如果它只是一个NSString数组,但如果它是一个NSArray对象怎么办?

bry*_*mac 6

如果您正在存储和检索患者列表,那么随着您的应用程序成熟,您可能需要以各种方式访问​​它们.CoreData和/或Sqlite提供了更强大的存储机制,可提供丰富的查询,索引和CRUD操作.

CoreData将为设计人员设计逻辑对象,并为您提供持久的sqlite.如果你想要更多的控制,你可以使用sqlite,如果你这样做,fmdb是一个很好的包装类.

除非您将此作为学习样本的学习样本,否则我不建议您使用plist来跟踪患者.如果是这种情况,那么这是关于将数组持久化到plists的另一篇SO文章:

如何从.plist文件读取数据结构到NSArray

从那篇文章:

NSString* plistPath = [[NSBundle mainBundle] pathForResource:@"league" ofType:@"plist"];
contentArray = [NSArray arrayWithContentsOfFile:plistPath];
Run Code Online (Sandbox Code Playgroud)

希望有所帮助