Android 判斷SD卡是否存在及容量查詢
<!-- 在SDCard中創建與刪除文件權限 --> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> <!-- 往SDCard寫入數據權限 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
SD卡是否存在
private boolean ExistSDCard() {
if (android.os.Environment.getExternalStorageState().equals(
android.os.Environment.MEDIA_MOUNTED)) {
return true;
} else
return false;
}
SD卡剩余空間
public long getSDFreeSize(){
//取得SD卡文件路徑
File path = Environment.getExternalStorageDirectory();
StatFs sf = new StatFs(path.getPath());
//獲取單個數據塊的大小(Byte)
long blockSize = sf.getBlockSize();
//空閑的數據塊的數量
long freeBlocks = sf.getAvailableBlocks();
//返回SD卡空閑大小
//return freeBlocks * blockSize; //單位Byte
//return (freeBlocks * blockSize)/1024; //單位KB
return (freeBlocks * blockSize)/1024 /1024; //單位MB
}
SD卡總容量
public long getSDAllSize(){
//取得SD卡文件路徑
File path = Environment.getExternalStorageDirectory();
StatFs sf = new StatFs(path.getPath());
//獲取單個數據塊的大小(Byte)
long blockSize = sf.getBlockSize();
//獲取所有數據塊數
long allBlocks = sf.getBlockCount();
//返回SD卡大小
//return allBlocks * blockSize; //單位Byte
//return (allBlocks * blockSize)/1024; //單位KB
return (allBlocks * blockSize)/1024/1024; //單位MB
}
本文由用戶 c6g3 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!