获取手机剩余空间工具类

 1 import java.io.File;
 2
 3 import com.iss.utils.LogUtil;
 4
 5 import android.os.Environment;
 6 import android.os.StatFs;
 7
 8 /**
 9 *  类名
10 *  @author 王洪贺<br/>
11 *    获取手机剩余的存储空间工具类
12 *    创建日期 2014年8月1日
13 */
14
15 public class StorageUtil {
16
17     /**
18     *  获取sd卡剩余存储空间
19     *  @return 返回kb字节为单位的long整形数值
20     */
21     public static long readSDCard() {
22         String state = Environment.getExternalStorageState();
23         if (Environment.MEDIA_MOUNTED.equals(state)) {
24             File sdcardDir = Environment.getExternalStorageDirectory();
25             StatFs sf = new StatFs(sdcardDir.getPath());
26             long blockSize = sf.getBlockSize();
27             long blockCount = sf.getBlockCount();
28             long availCount = sf.getAvailableBlocks();
29            /* LogUtil.d("", "block大小:" + blockSize + ",block数目:" + blockCount + ",总大小:" + blockSize
30                     * blockCount / 1024 + "KB");
31             LogUtil.d("", "可用的block数目::" + availCount + ",剩余空间:" + availCount * blockSize / 1024
32                     + "KB");*/
33             return availCount * blockSize / 1024;
34         } else {
35             return 0;
36         }
37     }
38
39     /**
40      *  获取sd卡剩余存储空间
41      *  @return 返回M字节为单位的long整形数值
42      */
43     public static long readSDCardM() {
44         return readSDCard() / 1024;
45     }
46
47     /**
48      *  获取系统剩余存储空间
49      *  @return 返回以KB为单位的long整形数值
50      */
51     public static long readSystem() {
52         File root = Environment.getRootDirectory();
53         StatFs sf = new StatFs(root.getPath());
54         long blockSize = sf.getBlockSize();
55         long blockCount = sf.getBlockCount();
56         long availCount = sf.getAvailableBlocks();
57         /*LogUtil.d("", "block大小:" + blockSize + ",block数目:" + blockCount + ",总大小:" + blockSize
58                 * blockCount / 1024 + "KB");
59         LogUtil.d("", "可用的block数目::" + availCount + ",可用大小:" + availCount * blockSize / 1024 + "KB");*/
60         return availCount * blockSize / 1024;
61     }
62
63     /**
64      *  获取系统剩余存储空间
65      *  @return 返回以M为单位的long整形数值
66      */
67     public static long readSystemM() {
68         return readSystem() / 1024;
69     }
70
71     /**
72      *  判断剩余空间是否大于指定空间
73      *  @param sizeMb 以MB为单位的指定大小
74      *  @return 返回值true为有相应空间,false为小于对应空间
75      */
76     public static boolean isAvailableSpace(int sizeMb) {
77         boolean hasSpace = false;
78         long availableSpare = readSDCardM();
79         if (availableSpare > sizeMb) {
80             hasSpace = true;
81         }
82         return hasSpace;
83     }
84
85     /**
86      *  判断剩余空间是否大于指定空间
87      *  @return 返回值true为有100M,false为小于100M
88      */
89     public static boolean isAvailableSpace() {
90         return isAvailableSpace(100);
91     }
92 }

获取手机剩余空间工具类

时间: 2024-08-26 16:37:04

获取手机剩余空间工具类的相关文章

获取手机信息的工具类PhoneHelper

PhoneHelper 获取手机的一些基本信息,比如生产商家.固件版本.手机型号.手机号码.屏幕分辨率等 代码如下 import java.io.File; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; import android.content.Context; import android.content.Intent; import android.conten

iOS获取文件夹中存储空间的大小、手机剩余空间大小、手机总空间大小 工具

// // DiskSpaceTool.h // ScreenRecordMaster // // Created by feimo on 15/7/24. // Copyright (c) 2015年 feimo. All rights reserved. // #import <Foundation/Foundation.h> #include <sys/param.h> #include <sys/mount.h> @interface DiskSpaceTool

利用线程创建发送手机验证码的工具类

1.生成验证码类 package com.util; import java.util.Timer; import java.util.TimerTask; /** * @description 手机发送验证码工具类 */ public class MessageCode extends TimerTask{ private Timer timer; /** * @description 短信验证码的内容 */ private String messageCode; /** * @descrip

获取数据库连接对象的工具类

mysql连接对象 jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/查找的文件jdbc.user=rootjdbc.password=自己设置的密码 oracle连接对象 jdbc.driver=oracle.jdbc.driver.OracleDriverjdbc.url=jdbc:oracle:thin:@localhost:1521:orcljdbc.user=scottjdbc.password=

安卓开发技巧四:手机分辨率处理工具类

/** * * @Description:手机分辨率处理工具类 * @author: * @see: * @since: * @copyright © * @Date:2014年8月13日 */ public class DensityUtil { /** * 根据手机的分辨率从 dp 的单位 转成为 px(像素) */ public static int dip2px(Context context, float dpValue) { final float scale = context.g

android获取屏幕宽高工具类

import java.lang.reflect.Field; import android.app.Activity; import android.content.Context; import android.graphics.Point; import android.util.DisplayMetrics; import android.view.Display; import android.view.Window; import android.view.WindowManager

weixin4j开发—为大家提供一个获取Weixin对象的工具类

如果大家下载了weixin4j的话,那么这个工具类对大家使用weixin4j将是一个非常好用的工具类. 首先我创建了一个数据表,来存放access_token CREATE TABLE `t_token` ( `id` int(11) NOT NULL AUTO_INCREMENT, `access_token` varchar(120) NOT NULL, `expires_in` int(11) NOT NULL, `createTime` datetime NOT NULL, PRIMAR

redis的使用:获取redis实例的工具类

package com.wanhua.util; import java.util.HashMap;import java.util.Map;import java.util.Set;import java.util.logging.Logger; import play.Play; import redis.clients.jedis.Jedis;import redis.clients.jedis.JedisPool;import redis.clients.jedis.JedisPoolC

java获取视频第一帧工具类

java获取视频文件第一帧,为了防止黑画面,此例取第五帧,本例子采用maven形式 1. pom.xml 添加引用jar包 jdk采用1.8,日志自行添加即可,这里使用的是log4j2 <!-- log4j2 --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.