Android -- 文件存储的五种方式

Android中文件存储有五种方式:

除了这五种,还可以直接把数据存储在手机的SD卡中,但是相对来说不安全。

文件存储:

文件存储是最基本的存储方式,他会原封不动的数据存储到文件里面,适合一些比较小的二进制数据或者简单的文本数据
文件存储和IO的使用方法类似,文件存储是利用Context类中的 openFileOutPut() 来将数据存储到指定的文件中,两个参数,文件名操作模式。其中文件名不需要路径,操作模式有两种,MODE_PRIVATE(覆盖重写)和MODE_APPEND(追加内容),还有另外两种在已经被废弃。

  private void saveData(String data) throws IOException {
        try(FileOutputStream fileOutputStream = openFileOutput("data",MODE_PRIVATE);
            BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(fileOutputStream))) {
            writer.write(data);
        }
    }

数据存储在/data/data/<package name>/files/

读取文件

读取文件是用Context类中的openFileInput() 的方法,接收一个参数就是文件名,之后他会自己去文件夹读取文件,并返回一个FileInputStream对象,之后用IO流的办法就可以把文件中的数据读出来了。

SharedPreferences存储

这个存储方式是采用key-value的存储方式,它提供了string,set,int,long,float,boolean六种数据类型,最终数据是以xml形式进行存储。他适用于保存一些简单的数据,比如用户配置等。
Android中主要有三种方式获得SharedPreferences对象
1、Context 类中的getSharedPreferences()

两个参数,第一个是文件名,第二个是操作模式

2、Activity类中的getPreferences()

只有操作模式一个参数,文件名自动以当前的活动为文件名。

3、PreferenceManager类中的getDefaultSharedPreferences()

一个参数,Context

文件存储在/data/data/<package name>/shared_prefs/目录下。
拿到SharedPreferences对象后首先调用edit()方法获得一个SharedPreferences.Editor对象,然后向其中用putXXX()的方法添加数据,最后用apply()的方法完成数据提交。
putXXX()中两个参数,第一个是key,第二个是value。getXXX()同理。读数据的时候用同样的方法获得SharedPreferences.Editor对象来getXXX()就可以了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值