600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > android的SP存储和SD卡存储

android的SP存储和SD卡存储

时间:2020-11-18 10:38:52

相关推荐

android的SP存储和SD卡存储

在android中有着很多的存储方式,例如数据库存储,SD卡存储以及SharedPreferences(以下简称SP)等,下面我们来主要的讲解一下SP以及SD卡存储。

首先是SP,SP存储是一个采用Key/Value(键值对)进行存储轻量级数据的一个接口。

SP存储的存储方式分为四种权限,分别可以给SP存储的数据进行不同的调用。

第一种:Context.MODE_PRIVATE,这种存储方式是Android的默认存储方式,代表存入的数据是私有的,只能该应用程序来调用。

第二种:Context.MODE_APPEND,这种存储方式是在存入数据时先检查一下文件是否存在,如果存在,就直接往里存入数据,否则就新建文件。

第三种:Context.MODE_WORLD_READABLE,这种存储方式则是允许其他应用程序来读取该文件,所以会导致文件泄露,所以很少用到。

第四种:Context.MODE_WORLD_WRITEABLE,这种方式则是允许其他程序将内容写到该文件内,所以也很少用到。

讲完了SP的四种存储方式,下面让我们来具体看一下SP存储在Android的具体存储方式:

首先,在Activity中获取一个SP对象

这个对象共有两个参数,第一个是你的文件名,第二个参数则是上面我们说到的四种存储方式其中的一种。

之后,如果要对这个文件进行读取则可以直接用获取到的对象进行读取

读取数据可以根据数据的不同类型来进行不同的读取方式,同样会有两个参数,我们第一个参数是要读取得Key值,第二个参数是如果没有读取到的默认值。

如果我们要写入数据的话,那么则需要获取到一个Editor对象,通过这个对象来进行存入数据

存入数据则是一样的操作,通过数据的不同类型来选择不同的方法进行存储,第一个参数是Key值,第二个参数则是我们要存入的数据,在将我们需要存入的数据写好了之后,我们通过提交来将数据存入文件

这样,我们的数据就通过SP存储的方式放入了文件内。这就是SP存储的具体方式。

通过SP存储的方式大家会发现一个问题,在存入小数据是,使用SP方式会很方便,但是在存入大量数据是,我们就会发现将数据一个一个的存入需要很多行代码,这样会浪费大量的时间,所以,Android也给大家提供了另外的方法,那就是SD卡存储方式,和SP存储的区别是,可以快速的存入大量的数据,节约了很多的代码,也可以将一些图片,视频类型的文件给存储起来。

下面我们就来看一下SD卡存储方式。

SD卡存储方式其实很多人并陌生,就是IO流,通过流的方式将数据写入到文件内,路径是我们的SD卡内

FileInputStream fileInputStream = new FileInputStream("/sdcard/Download/yy.txt");

byte[] bytes = new byte[1024];

int len = 0;

StringBuilder stringBuilder = new StringBuilder();

while((len = fileInputStream.read(bytes))!=-1){

stringBuilder.append(new String(bytes,0,len));

}

以上就是一个简单的SD卡存储样式。

需要注意的是,在Android6.0也就是API版本23及其以上我们在使用SD卡存储是,要先给该应用程序写一个动态添加读写权限的代码,否则将会无法使用SD存储方式。

好了,以上就是今天要讲的两种存储方式。

感谢大家的观看。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。