关于android中数据持久化存储的方法的知识整理

来源:互联网 发布:排名优化软件点击 编辑:程序博客网 时间:2024/06/06 02:48
android中数据持久化存储大致有三种方式:1.文件存储;2.SharedPreferences;3.数据库存储

各自的使用情况如下:
1.文件存储:
适用情况:不对数据做任何处理,直接保存到文件当中,适用于存储简单的文本或者二进制数据
将文本数据保存到文件中的方法(过程):
通过openFileOutput()方法——>得到FileOutputStream对象,借助它构建——>OutputStreamWriter对象——>构建BUfferedWriter对象,通过它将文本保存到文件中。
从文件中读取数据的过程:
使用openFileInput("要读取的文件名"),返回一个FileInputStream对象,再通过java流的方法将数据读取出来:
通过openFileInput()方法——>得到FileInputStream对象,借助它构建——>InputStreamReader对象——>构建BUfferedReader对象,通过它将文件中内容读取出来。

2.SharedPreferences
适用情况:采用键值对的方式存储,比文件存储相对而言更方便
通过SharedPreferences对象,向SharedPreferences文件存储数据:
i  )调用SharedPreferences对象的edit()方法来获取一个SharedPreferences.Editor对象
ii )向SharedPreferences.Editor对象中添加数据
iii)调用commit()方法将添加的数据提交,从而完成数据存储工作
同样,用get**()方法就可以读取了。

3.数据库存储:
适用情况:需要存储大量复杂的关系型数据时
使用SQLiteopenHelper帮助类,是一个抽象类,使用时需要创建自己的帮助类去继承它。其中有两个重要的抽象方法,分别是oncreate()和onUpdate(),通过在自己的帮助类中重写这两种方法来实现创建和升级数据库。另外还有两个重要的实例方法,getReadableDatabase()和getWriteableDatabase(),这两个方法都可以创建或者打开一个数据库,并返回一个可对数据库进行读写操作的对象。
SQLiteOpenhelper中有两个构造方法可供重写,一般使用参数少的那个,其4个参数分别为:
(1)Context:必须有才能对数据库进行操作;
(2)数据库名
(3)允许在查询数据时返回一个自定义的cursor,一般传入null
(4)表示当前数据库的版本号,可用于对数据库进行升级操作。
0 0
原创粉丝点击