原创

安卓数据持久化存储

数据存储是Android上非常重要的功能,各个应用存储的数据或文件是私有的,在默认情况下,只有该应用本身能够访问其存储的数据资源。Android向开发者提供的存储方式有文件、SharePreference、SQLite数据库和Content Provider 4种类型。

1.文件存储

Android采用Java.io.*库来提供输入/输出接口,所有文件都是以流为基础进行读/写的 Context 类 的openFileOutput(String name,int mode)方法用来创建一个文件的输出流(FileOutputStream)对象,当创建失败时会抛出FileNotFoundException异常。参数name 表示文件的名字,并且不能含有路径信息。当文件不存在时,该文件将被创建,文件存储在默认的/data/data/<包名>/files/目录下。参数mode表示文件打开或创建的方式。mode 的取值有如下几种。

  • MODE_PRIVATE:表示该文件只能被本应用访问。

  • MODE_APPEND:表示新的内容会添加在原文件内容的后面。

  • MODE_WORLD_WRITABLE:表示该文件能被所有应用写入。

  • MODE_WORLD_READABLE:表示该文件能被所有应用读取。

如果想在一个应用特定的文件夹下创建文件,可以使用File类的构造函数File(String path),参数path表示新创建文件的路径。在获得文件后,可以用FileOutputStream来封装File,创建文件输出流,当创建失败时会抛出FileNotFoundException异常。

FileOutputStream类的write(byte[] buffer)方法将把buffer的数据写入输出流中,完成文件存储操作。需要注意的是,对输入/输出流操作结束后,应该要将其关闭,以便释放宝贵的I/O资源!

温馨提示:
本文最后更新于 2021年01月07日,已超过 546 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我
正文到此结束
该篇文章的评论功能已被站长关闭
本文目录