数据持久化(六)

     数据持久化
1.文件持久化:
  Context类中提供的 openFileInput()和 openFileOutput()方法, 之后就是利用 Java的各种流来进行读写
 操作就可以了。默认路径:/data/data/<package name>/files/

2.SharedPreferences 存储
  不同于文件的存储方式,SharedPreferences 是使用键值对的方式来存储数据的。也就是
 说当保存一条数据的时候,需要给这条数据提供一个对应的键,这样在读取数据的时候就可
 以通过这个键把相应的值取出来。而且 SharedPreferences还支持多种不同的数据类型存储,
 如果存储的数据类型是整型,那么读取出来的数据也是整型的,存储的数据是一个字符串,
 读取出来的数据仍然是字符串。文件存放在:/data/data/<packagename>/shared_prefs/
 1.获取该类的方法有三种:
  1.Context类中的 getSharedPreferences()方法
  2.Activity类中的 getPreferences()方法
  3.PreferenceManager类中的 getDefaultSharedPreferences()方法
 2.使用方式:
  1.  调用 SharedPreferences对象的 edit()方法来获取一个 SharedPreferences.Editor 对象。
  2.  向 SharedPreferences.Editor 对象中添加数据,比如添加一个布尔型数据就使用
   putBoolean 方法,添加一个字符串则使用 putString()方法,以此类推。
  3.  调用 commit()方法将添加的数据提交,从而完成数据存储操作。

3.SQLite 数据库存储
 1.继承SQLiteOpenHelper类,重写onCreate方法和onUpgrade方法
 2.数据库文件会存放在/data/data/<package name>/databases/目录下
 3. getReadableDatabase() 和getWritableDatabase()。
  这两个方法都可以创建或打开一个现有的数据库(如果数据库已存在则直接打开,否则创建一个新的数据库),
  并返回一个可对数据库进行读写操作的对象。不同的是,当数据库不可写入的时候(如磁盘空间已满)
  getReadableDatabase()方法返回的对象将以只读的方式去打开数据库,而 getWritableDatabase()方法则将出现异常
 4.事务
  1. SQLiteDatabase.beginTransaction(); //  开启事务
  2.SQLiteDatabase.setTransactionSuccessful(); // 事务已经执行成功
  3.SQLiteDatabase.endTransaction(); // 结束事务
 5.数据创建要保证一会被调用一次,不然会出现数据冲掉的现象

转载于:https://my.oschina.net/u/1995545/blog/393466

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值