ios 的数据存储

来源:互联网 发布:ae cc 2017 mac下载 编辑:程序博客网 时间:2024/05/02 02:15

iOS开发中一般是有四种存储数据的方式,分别是: 

  1.NSUserDefaults:用来保存用户自己设置的一些属性,用户再次打开程序,或者开机后,这些信息还是存在,NSUserDefaults可以存储的类型包括NSString,NSData,NSNumber,NSDictionary,NSArray。如果要存储其他的数据类型,则需要转化为前面的一些类型,NSUSerDefaults才可以去存储。

  2.NSKeyedArchiver:采用归档的形式来保存数据,数据对象需要遵守NSCoding协议,并且数据对象对应的类需要实现encodeWithCoder:和initWithCoder:方法,encodeWithCoder:用来告诉系统如何对数据对象进行编码,initWithCoder:用来对数据对象进行解码。例如新闻分类的添加,等再一次进入app的时候添加的分类还是能保存下来的。

  3.Sqlite数据库:Sqlite数据库广泛用在移动操作系统开发中,在用这个数据库的时候,需要先添加数据库相关的库和头文件,libsqlite3.dylib,具体数据库的操作可以通过第三库进行操作,例如FMDB这个开源的第三方库。

  4.写入到磁盘:通过NSSearchPathForDirectoriesInDomains这个方法获得文件即将保存的路径。

   其实iOS开发中数据存储的方式主要是可以分为两种,一种是存储到文件里面,另一种是存储到数据库里面的。存储到文件里面的方式例如NSUserDefaults,plist,NSKeyedArchiver归档等方式,只是plist,NSKeyedArchiver方式是可以选择的保存到沙盒中,而NSUserDefaults是默认保存到沙盒的Library/Preferences目录中的。存储到数据库这个方式,可以通过SQL直接访问数据库,也可以通过ORM(Object Relational Mapping)进行对象关系映射访问数据库。下面主要介绍一下存储到数据库的这种方式。

  SQLite是目前主流的嵌入式关系型数据库,其主要特点是轻量级,跨平台,该数据库广泛用到许多嵌入式操作系统中,SQLite数据库是基于C语言开发的轻量级数据库,在iOS中需要使用C语言进行数据库的操作,无法使用Objective-C,因为导入的libsqlite3是用C语言编写的,使用SQLite数据库比较简单,如果是在Mac OSX中使用,可以去SQLite官方网站下载命令行工具,也可以用类似SQLiteManager等工具进行数据库的使用

0 0
原创粉丝点击