获取手机剩余空间工具类
2014-08-12 10:11
218 查看
import java.io.File; import com.iss.utils.LogUtil; import android.os.Environment; import android.os.StatFs; /** * 类名 * @author 王洪贺<br/> * 获取手机剩余的存储空间工具类 * 创建日期 2014年8月1日 */ public class StorageUtil { /** * 获取sd卡剩余存储空间 * @return 返回kb字节为单位的long整形数值 */ public static long readSDCard() { String state = Environment.getExternalStorageState(); if (Environment.MEDIA_MOUNTED.equals(state)) { File sdcardDir = Environment.getExternalStorageDirectory(); StatFs sf = new StatFs(sdcardDir.getPath()); long blockSize = sf.getBlockSize(); long blockCount = sf.getBlockCount(); long availCount = sf.getAvailableBlocks(); /* LogUtil.d("", "block大小:" + blockSize + ",block数目:" + blockCount + ",总大小:" + blockSize * blockCount / 1024 + "KB"); LogUtil.d("", "可用的block数目::" + availCount + ",剩余空间:" + availCount * blockSize / 1024 + "KB");*/ return availCount * blockSize / 1024; } else { return 0; } } /** * 获取sd卡剩余存储空间 * @return 返回M字节为单位的long整形数值 */ public static long readSDCardM() { return readSDCard() / 1024; } /** * 获取系统剩余存储空间 * @return 返回以KB为单位的long整形数值 */ public static long readSystem() { File root = Environment.getRootDirectory(); StatFs sf = new StatFs(root.getPath()); long blockSize = sf.getBlockSize(); long blockCount = sf.getBlockCount(); long availCount = sf.getAvailableBlocks(); /*LogUtil.d("", "block大小:" + blockSize + ",block数目:" + blockCount + ",总大小:" + blockSize * blockCount / 1024 + "KB"); LogUtil.d("", "可用的block数目::" + availCount + ",可用大小:" + availCount * blockSize / 1024 + "KB");*/ return availCount * blockSize / 1024; } /** * 获取系统剩余存储空间 * @return 返回以M为单位的long整形数值 */ public static long readSystemM() { return readSystem() / 1024; } /** * 判断剩余空间是否大于指定空间 * @param sizeMb 以MB为单位的指定大小 * @return 返回值true为有相应空间,false为小于对应空间 */ public static boolean isAvailableSpace(int sizeMb) { boolean hasSpace = false; long availableSpare = readSDCardM(); if (availableSpare > sizeMb) { hasSpace = true; } return hasSpace; } /** * 判断剩余空间是否大于指定空间 * @return 返回值true为有100M,false为小于100M */ public static boolean isAvailableSpace() { return isAvailableSpace(100); } }
相关文章推荐
- 获取Android手机中SD卡存储信息 获取剩余空间
- 获取Android手机中SD卡存储容量 获取剩余空间
- 获取Android手机中SD卡存储信息 获取剩余空间
- 手机与存储卡空间大小剩余怎么获取
- 获取Android手机中SD卡存储信息 获取剩余空间
- 获取Android手机中SD卡存储信息 获取剩余空间
- 获取Android手机中SD卡存储信息 获取剩余空间
- iOS 获取手机剩余存储空间
- Android 获取Android手机中SD卡存储信息 获取剩余空间
- iOS获取文件夹中存储空间的大小、手机剩余空间大小、手机总空间大小 工具
- Android 获取系统或SDCARD剩余空间信息
- 在Windows下通过JConfig获取磁盘剩余空间信息
- C#如何获取远程磁盘上的剩余空间
- 简单获取硬盘剩余空间(Windows)
- 获取磁盘使用空间和剩余空间
- 通过VBS获取磁盘剩余空间
- 获取磁盘剩余空间
- Android.os下的StatFs类主要用来获取文件系统的状态,能够获取sd卡的大小和剩余空间,获取系统内部空间也就是/system的大小和剩余空间等等。
- 获取磁盘剩余空间
- [脚本收集]获取磁盘剩余空间