Android App存储

来源:互联网 发布:致远软件合肥 编辑:程序博客网 时间:2024/06/15 20:36

分类

  • 内部存储(internal)

    内部存储位于系统中很特殊的一个位置,只能被你的应用访问到,默认地址/data/data/<包名>,应用卸载,相应的文件也要被删除

  • 外部存储(external)

    所有的安卓设备都有外部存储和内部存储,SDCard都是外部存储。最简单的分辨的理解,能被电脑识别的都是外部存储

常见错误理解

  • 外部存储就是外置SD卡,内部存储就是手机内置的存储空间

外置存储是外部存储但不是所有的存储,在后续的Android版本中,手机自带的存储空间越来越大,所以也分为的内部存储和外部存储。

  • Environment.getExternalStorageDirectory()取得的是SD卡的存储路径

Environment.getExternalStorageDirectory()取得是外部存储的路径

常用操作

内部存储

  • Context.getFileDir()获取应用的内部存储地址
  • Context.openFileInput(String name)写入私有文件
  • Context.openFileInput(String name)读取私有文件
  • Context.fileList()列出所有的私有文件的文件名
  • Context.deleteFile(String name)删除私有文件
  • Context.getDir(String name, int mode)在内存存储生成私有的目录
// 向私有文件testFile写入数据“Hello Android!”String mFileName = "testfile";String mFileThings = "Hello Android!";FileOutputStream outputStream;try{    outputStream = openFileOutput(mFileName, Context.MODE_PRIVATE);    outputStream.write(mFileThings.getBytes());    outputStream.close();} catch(Exception e) {    e.printStackTrace();}

外部存储

  • 概述

外部存储中文件可被用户或其他应用程序修改,分为两种文件(或者目录)。

  • 公共文件 /android/data/<包名>/files/typeName

    Context.getExternalFilesDir(@Nullable String type)获取,文件可以被自由访问,而且数据对其他应用或者用户而言都是有意义,当应用被卸载以后,其卸载前的数据依然保留。

  • 私有文件 /android/data/<包名>/cache

    getExternalCacheDir()获取,文件可以被自由访问,但是对于其他应用而言都是没有任何意义的。在应用被卸载时,私文件也会被删除。

0 0
原创粉丝点击