java代碼: java
public void SDCardSizeTest() { // 取得SDCard當前的狀態 String sDcString = android.os.Environment.getExternalStorageState(); if (sDcString.equals(android.os.Environment.MEDIA_MOUNTED)) { // 取得sdcard文件路徑 File pathFile = android.os.Environment .getExternalStorageDirectory(); android.os.StatFs statfs = new android.os.StatFs(pathFile.getPath()); // 獲取SDCard上BLOCK總數 long nTotalBlocks = statfs.getBlockCount(); // 獲取SDCard上每一個block的SIZE long nBlocSize = statfs.getBlockSize(); // 獲取可供程序使用的Block的數量 long nAvailaBlock = statfs.getAvailableBlocks(); // 獲取剩下的全部Block的數量(包括預留的通常程序沒法使用的塊) long nFreeBlock = statfs.getFreeBlocks(); // 計算SDCard 總容量大小MB long nSDTotalSize = nTotalBlocks * nBlocSize / 1024 / 1024; // 計算 SDCard 剩餘大小MB long nSDFreeSize = nAvailaBlock * nBlocSize / 1024 / 1024; }