android中获取SD卡的总容量,已使用的容量,剩余的容量。
判断SD卡是否插入:
if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
return true;
}else
{
return false;
}
获取SD卡的总容量,剩余容量,已使用的容量:
StatFs sf = new StatFs(path.getPath());
long size = sf.getBlockSize();//SD卡的单位大小
long total = sf.getBlockCount();//总数量
long available = sf.getAvailableBlocks();//可使用的数量
DecimalFormat df = new DecimalFormat();
df.setGroupingSize(3);//每3位分为一组
//总容量
String totalSize = (size*total)/1024>=1024?df.format(((size*total)/1024)/1024)+"MB":df.format((size*total)/1024)+"KB";
//未使用量
String avalilable = (size*available)/1024>=1024?df.format(((size*available)/1024)/1024)+"MB":df.format((size*available)/1024)+"KB";
//已使用量
String usedSize = size*(total-available)/1024>=1024?df.format(((size*(total-available))/1024)/1024)+"MB":df.format(size*(total-available)/1024)+"KB";
判断SD卡是否已移除:
if(Environment.getExternalStorageState().equals(Environment.MEDIA_REMOVED))