数据存储详解(二)---->File存储:内部存储 -Cache和外部存储-SD卡

内部存储Cache:

缓存包括两种方法,一种利用openFileOutput和openFileInput存储在file文件中,一种是写到cache文件中。

openFileOutput和openFileInput:

1.概述:

context提供了两个方法来打开应用程序的数据文件夹里的文件IO流:
openFileInput(String name):读出
openFileOutput(String name,int mode):写入
模式支持的值:
MODE_PRIVATE:该文件只能被当前程序读写
MODE_APPEND:应用程序可以向该文件追加内容。
MODE_WORLD_READABLE:该文件内容可以被其他程序读取。
MODE_WORLD_WRITEABLE:该文件内容可由其他程序读、写。

默认存储位置:/data/data/< package name>/files目录下

2.方法:

file.getAbsolutePath();//获得文件的绝对路径。
写入到缓存中的file文件夹中:
数据存储详解(二)---->File存储:内部存储 -Cache和外部存储-SD卡_第1张图片
从缓存中的file文件夹中读取数据:
数据存储详解(二)---->File存储:内部存储 -Cache和外部存储-SD卡_第2张图片

写到cache中:
将数据写到缓存中的cache文件中:
数据存储详解(二)---->File存储:内部存储 -Cache和外部存储-SD卡_第3张图片

读写SD卡文件:

1.概述:

由于手机的存储空间有限,为了更好的存取应用程序的大文件,应用程序需要读写SD卡上的文件,SD卡大大扩充了手机的存储能力。

注意:SD卡和扩展卡的区别:
扩展卡是指外插的TF卡,而这里所说的SD卡是指手机除了系统内存外的扩展的内部的存储空间。

2.权限:

数据存储详解(二)---->File存储:内部存储 -Cache和外部存储-SD卡_第4张图片
注:用模拟器可能不需要权限就能写入,但使用手机必须使用权限。

3.路径:

利用Environment.静态方法。
查询API可找到其各种静态方法代表的路径。
建议使用Environment来创建文件,不要直接写路径。

4.步骤:

1>判断手机上是否插入了SD卡,并且应用程序具有读写SD卡的权限,如果都有,就返回true

Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED);

2>获取外部存储器,即SD卡的目录:

Environment.getExternalStorageDirectory()

3.范例:

将数据写到SD卡中:
数据存储详解(二)---->File存储:内部存储 -Cache和外部存储-SD卡_第5张图片

你可能感兴趣的:(存储,数据存储)