查询SD卡容量信息
16lz
2021-01-24
推荐安卓开发神器(里面有各种UI特效和android代码库实例)
import java.io.File;import android.os.Environment;import android.os.StatFs;public class MemoryStatus {static final int ERROR = -1;static public boolean externalMemoryAvailable() { return android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);}static public long getAvailableInternalMemorySize() {File path = Environment.getDataDirectory();StatFs stat = new StatFs(path.getPath());long blockSize = stat.getBlockSize();long availableBlocks = stat.getAvailableBlocks();return availableBlocks * blockSize;}static public long getTotalInternalMemorySize() {File path = Environment.getDataDirectory();StatFs stat = new StatFs(path.getPath());long blockSize = stat.getBlockSize();long totalBlocks = stat.getBlockCount();return totalBlocks * blockSize;}static public long getAvailableExternalMemorySize() {if(externalMemoryAvailable()) {File path = Environment.getExternalStorageDirectory();StatFs stat = new StatFs(path.getPath());long blockSize = stat.getBlockSize();long availableBlocks = stat.getAvailableBlocks();return availableBlocks * blockSize;} else {return ERROR;}}static public long getTotalExternalMemorySize() {if(externalMemoryAvailable()) {File path = Environment.getExternalStorageDirectory();StatFs stat = new StatFs(path.getPath());long blockSize = stat.getBlockSize();long totalBlocks = stat.getBlockCount();return totalBlocks * blockSize;} else {return ERROR;}}static public String formatSize(long size) {String suffix = null;if (size >= 1024) {suffix = "KiB";size /= 1024;if (size >= 1024) {suffix = "MiB";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();}}
更多相关文章
- android 用ExpandableListView实现的文件目录树框架
- android实现状态栏添加图标的函数实例
- Android实现Flip翻转动画效果
- Android:intent用法实例
- Android应用程序组件Content Provider应用实例(4)
- Android中JSON解析细解及实例
- Android中js和原生交互的示例代码
- Android(安卓)Activity界面切换添加动画特效
- Android中结合OrmLite for android组件对SQLite的CRUD(增删改查)