Android(java)学习笔记183:判断SD卡状态和存储空间大小

时间:2023-03-09 03:47:59
Android(java)学习笔记183:判断SD卡状态和存储空间大小

1. 判断SD卡状态和SD卡存储空间大小

当我们在使用SD卡时候,如果我们想往SD卡里读写数据,我们必须在这之前进行一个逻辑判断,那就是判断SD卡状态和SD存储空间大小:

核心代码:

   String status = Environment.getExternalStorageState();
//判断sd卡是否安装
if(Environment.MEDIA_MOUNTED.equals(status)){
//判断sd卡的可用空间
File file = Environment.getExternalStorageDirectory();
long freespace = file.getFreeSpace();//bytes
String info = Formatter.formatFileSize(this, freespace);
Toast.makeText(this, "sd卡可用,剩余空间:"+info, 0).show();
}else{
Toast.makeText(this, "sd卡不可用,不可以读写数据", 0).show();
}

(1)Environment.getExternalStorageState():获得当前外部储存媒体的状态。
注:public static String getExternalStorageState(){……}

(2)

File file = Environment.getExternalStorageDirectory();//获取文件目录抽象表达file  

long freespace = file.getFreeSpace();//获取可用空间大小,返回类型为long  

String info = Formatter.formatFileSize(this, freespace);//转换可用空间大小表达形式 ,返回字符串String

(3)最后容易让我们忽略的就是在AndroidManifest.xml文件中添加SD卡的权限,如下:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>