在android中读取外部SD卡中的可用空间
我写方法,但它只返回内部内存空间。但是我想要SD卡的可用空间大小在android中读取外部SD卡中的可用空间,android,android-external-storage,Android,Android External Storage,我写方法,但它只返回内部内存空间。但是我想要SD卡的可用空间大小 public static String getAvailableExternalMemorySize() { if (externalMemoryAvailable()) { File path = Environment.getExternalStorageDirectory(); StatFs stat = new StatFs(pa
public static String getAvailableExternalMemorySize() {
if (externalMemoryAvailable()) {
File path = Environment.getExternalStorageDirectory();
StatFs stat = new StatFs(path.getPath());
long blockSize = stat.getBlockSizeLong();
long availableBlocks = stat.getAvailableBlocksLong();
return formatSize(availableBlocks * blockSize);
} else {
return "Exception";
}
}
//这里返回MB
public static String formatSize(long size) {
String suffix = null;
if (size >= 1024) {
suffix = "KB";
size /= 1024;
if (size >= 1024) {
suffix = "MB";
size /= 1024;
}
}
StringBuilder resultBuffer = new StringBuilder(Long.toString(size));
int commaOffset = resultBuffer.length() - 3;
while (commaOffset > 0) {
resultBuffer.insert(commaOffset, ',');
commaOffset -= 3;
}
if (suffix != null) resultBuffer.append(suffix);
return resultBuffer.toString();
}
//检查是否有外部存储器
public static boolean externalMemoryAvailable() {
return android.os.Environment.getExternalStorageState().equals(
android.os.Environment.MEDIA_MOUNTED);
}
它只返回内部内存空间
。没有。外部存储空间。查看您使用的函数的函数名。这提供了外部存储路径。这确实与sd卡路径不同。它只返回内部内存空间
。没有。外部存储空间。查看您使用的函数的函数名。这提供了外部存储路径。这确实与sd卡路径不同。