iOS数据持久化

几种方式:

  1. NSUserDefaults
  2. KeyChain
  3. Sqlite Database
  4. CoreData
  5. Saving Files

NSUserDefaults

官方文档:NSUserDefaults

  • 运行时数据有缓存,定期与数据库同步
  • 支持数据类型:NSData, NSString, NSNumber, NSDate, NSArray, or NSDictionary
  • 线程安全

SampleCodes

NSUserDefaults* udt = [NSUserDefaults standardUserDefaults];

//write
[udt setObject:@"jim" forKey:@"name"];
[udt synchronize];

//read
NSString* nameValue = [udt stringForKey:@"name"];
NSLog(@"NameValue: %@", nameValue);

数据保存在Library/Preferences/*.plist中,可以做简单数据结构的存储,比如一些配置项。

KeyChain

可以用来保存安全敏感的数据,比如用户名密码。

Sqlite Database

对于iOS平台开发来说,CoreData更加适用。如果你要做跨平台应用,那么Sqlite是不错的选择。

CoreData

一个相对复杂的framework,与cocoa高度集成。看起来较多数据的持久化还是需要这个模块,apple没有重新造轮子。

Saving Files

沙盒机制下,文件保存限于:Documents、Library(有些文件可能会被删除)、tmp

使用NSData的接口可以方便的读写。

你可能感兴趣的:(iOS数据持久化)