移动应用开发-第五章数据存储

Android中的数据存储方式有五种。分别是文件存储,SharedPreferences存储,SQLite数据库存储,ContentProvider存储以及网络存储。

5.1数据存储方式

①文件存储:将数据或配置信息以文件的形式存储在设备中。方法openFileInput()与openFileOutput()来读取设备上的文件。

②SharedPreferences:用来存储一些简单的配置信息的一种机制,它采用了XML格式将数据存储到设备中。

③SQLite数据库:自带的一个轻量级的数据库,运算速度快,占用资源少,支持基本SQL语法。

④ContentProvider:四大组件之一,主要用于应用程序之间的数据交换,可以将自己的数据共享给其他应用程序使用。

⑤网络存储:需要与Android网络数据包打交道,将数据存储到服务器上,通过网络提供的存储空间来存储或获取数据信息。

5.2文件存储

通过I/0流的形式把数据直接存储到文件中。

1,将数据存入文件中。

有两种:一种是内部存储,另一种是外部存储。其中,内部存储是将数据以文件的形式存储到应用中,外部存储是将数据以文件的形式在储到一些外部设备中。

①内部存储:存储的文件会被其所在的应用程序私有化,如果其他应用程序想要操作本应用程序中的文件,则需要设计权限。当创建的应用程序被卸载时,其内部存储文件也随之被删除。

它使用的是Context提供的openFileOutput()方法和openFileInput()方法,这两个方法能够返回进行读写操作的FileOutputStream对象和FileInputstream对象。

mode表示文件的操作模式,也就是读写文件的方式,有MODE_+PRIVATE:该文件只能被当前程序读写,+APPEND:该文件的内容可以追加,+WORLD_READABLE:该文件的内容可以被其他程序读取,+WORLD_WRITEABLE:该文件的内容可以被其他程序写入。

write()方法写入。

②外部存储:属于永久性存储。

由于外部存储设备可能被移除,丢失或者处于其他状态,所以在使用外部设备之前必须使用Environment.getExternalStorageState()方法确认外部设备是否可用,当外部设备可用并且具有读写权限时,就可以通过FileInputStream,FileOutputStream对象来读写外部设备中的文件。

FileInputStream对象能够读取内部存储文件中的数据,读取外部存储文件中的数据时,首先需要获取外部设备的路径,并通过该路径来读取对应文件中的数据。

5.3ShardPreferences

一个轻量级存储类。

1,将数据存入SharedPreferences中

调用getSharedPreferences()方法获取实例对象。由于该对象本身只能获取数据不能对数据进行存储和修改,所以需要调用SharedPreferences类的edit()方法获取可编辑的Editor对象,最后通过该对象的putXxx()方法存储数据。Editor编辑器是通过key/value键值对形式将数据保存在XML文件中。

2,读取与删除SharedPreferences中的数据

①读取:只需要获取到SharedPreferences对象,然后通过该对象的getXxx()方法获取到相应key的值即可。

②删除SharedPreferences中的数据:调用Editor对象的remove()方法或者clear()方法即可。

5.4SQLite数据库

①创建:创建一个类继承SQLiteOpenHelper类,在该类中重写onCreate()方法和onUpgrade()方法即可。

②基本操作:添加数据insert(),删除数据delete(),修改数据update(),查询数据query()。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值