使用路径 api 读写文件
- getFilesDir()得到的file对象的路径是data/data/com.itheima.rwinrom2/files
存放在这个路径下的文件,只要你不删,它就一直在 - getCacheDir()得到的file对象的路径是data/data/com.itheima.rwinrom2/cache
存放在这个路径下的文件,当内存不足时,有可能被删除 - 系统管理应用界面的清除缓存,会清除cache文件夹下的东西,清除数据,会清除整个包名目录下的东西
- 获取SD卡路径
1 | Environment.getExternalStorageDirectory(); |
检测 SD 卡状态
1 | if(Environment.getExternalStorageState().equals(Environment.MEDIA_UNKNOWN)){ |
获取 SD 卡剩余可用空间
1 | //获取SD卡内存状态 |
获取当前系统版本的等级
1 | if(Build.VERSION.SDK_INT >= 18){} |
Linux 文件的访问权限
- 在Android中,每一个应用是一个独立的用户
- drwxrwxrwx
- 第1位:d表示文件夹,-表示文件
- 第2-4位:rwx,表示这个文件的拥有者用户(owner)对该文件的权限
- r:读
- w:写
- x:执行
- 第5-7位:rwx,表示跟文件拥有者用户同组的用户(grouper)对该文件的权限
- 第8-10位:rwx,表示其他用户组的用户(other)对该文件的权限
openFileOutput 的四种模式
1 | //创建 info.txt 文件,并指定访问权限 |
- MODE_PRIVATE: -rw-rw—-
- MODE_APPEND: -rw-rw—-
- MODE_WORLD_WRITEABLE: -rw-rw–w-
- MODE_WORLD_READABLE: -rw-rw-r–
使用 SharedPreference 保存数据
1 | //保存数据 |
序列化生成 xml 文件
1 | File file = null; |
pull 解析 xml 文件
1 | File file; |