Android存储理解和操作
来源:互联网 发布:大数据专业课程 编辑:程序博客网 时间:2024/06/03 22:23
一.内部存储和外部存储
1.几个错误的理解:
1.1外部存储就是外置SD卡,内部存储就是手机内的容量。
1.2Environment.getexternalstoragedirectory()取得的是SD卡的存储路径
2.不同Android版本下的外部存储和内部存储
2.1内部存储
2.2外部存储
二.内部存储和外部存储的操作
1.内部存储的操作
内部存储一般用Context来操作,getFileDir()获得应用的内部存储地址,android来提供了openFileOut()来读写在内部存储空间上的文件
1.1写入一个文件
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();
}
1.2列出所有已经创建的文件
String[] files = Context.fileList();
for (String file:files) {
Log.i("the file is ","....file" );
}
1.3删除文件,只需要提供文件名即可
if(Context.deleteFile(fileName)) {
Log.i("删除文件成功", ".......");
} else {
Log.i("删除文件是被", "........");
}
1.4创建一个目录,需要传入目录名称,放回一个文件队对象用到的操作路径
FilefileDir = Context.getDir(dirName, Context.MODE_PRIVATE);
Log.i("绝对路径为", fileDir.getAbsolutePath());
1.5内部存储操作总结
文件操作只需要向函数提供文件名,所以程序自己只需要维护文件名即可;
不用自己去创建文件对象和输入、输出流,提供文件名就可以返回File对象或输入输出流
对于路径操作返回的都是文件对象。
2.外部存储的操作
2.1 概述
2.2 公共文件 /android/data/<包名>/files
2.3 私有文件 /android/data/<包名>/cache
文件由于位于外部存储所以任意应用都可以改变,但是对于其他应用而言都是没有任何意义的。在应用被卸载时,私有文件也会被删除,类似与内部存储文件。可以使用创建应用私有文件的方法是Context.getExternalFilesDir(),但是如果你的API低于8时,只能够使用Environment.getExternalStorageDirectory(),返回外部存储根目录。
- Android存储理解和操作
- Android存储理解和操作
- 理解Android存储架构
- android笔记-android基本操作和数据存储
- Android笔记----Android的数据存储和IO操作
- Android笔记----Android的数据存储和IO操作
- Android 数据存储操作
- android存储/数据操作
- Android设备的内置存储和外置存储到底是怎么回事,深入理解
- android 的内存、内部存储和外部存储的理解/cache/system。
- Android Studio——android中的文件操作详解以及内部存储和外部存储
- android,内部存储,外部存储,权限理解
- 关于android 和 耗时操作的一点理解
- 存储过程的理解与操作
- android中的文件操作详解以及内部存储和外部存储
- android中的文件操作详解以及内部存储和外部存储
- android中的文件操作详解以及内部存储和外部存储
- android中的文件操作详解以及内部存储和外部存储
- Objective - C基础: 第二天 - 11.继承的关键字Super
- Qt使用第三方库GMP,用以超长整数运算
- 使用HBase EndPoint(coprocessor)进行计算
- 118. Pascal's Triangle Leetcode Python
- 把一个数的第三位进行清零、置位、取反
- Android存储理解和操作
- 利用sqoop将hive数据导入导出数据到mysql
- 自定义适配器
- container_of宏详解
- pb通过jdbc连接mysql
- device_register()分析
- 设备驱动基础0:设备模型之kobject,kset及其关系
- Linux I2C驱动分析(三)----i2c_dev驱动和应用层分析
- Linux I2C驱动分析(二)----I2C板级设备扫描和数据传输