2019独角兽企业重金招聘Python工程师标准>>>

/**
     * 获取硬盘空间
     */
    private static long getSdcSpace() {
        final String MOUNTS_FILE = "/proc/mounts";
        String sdcPath = "";
        BufferedReader br = null;
        String strLine = null;
        String rs = "\\/mnt/sd[a-z]\\/sd[a-z]\\d";
        boolean bMounted = false;
        try {
            br = new BufferedReader(new FileReader(MOUNTS_FILE));
            while ((strLine = br.readLine()) != null) {
                // Log.d(TAG, "strLine ====>>>"+strLine.toString());
                Pattern p = Pattern.compile(rs);
                Matcher m = p.matcher(strLine.toString());
                while (m.find()) {
                    bMounted = true;
                    sdcPath = m.group(0);
                    Log.d(TAG, "sdc mount path = " + m.group(0));
                    break;
                }
            }
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            if (br != null) {
                try {
                    br.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
            br = null;
        }

try {
            if (bMounted) {
                StatFs stat = new StatFs(sdcPath);
                long blockSize = stat.getBlockSize();
                long availableBlocks = stat.getAvailableBlocks();
                Log.d(TAG, "free sdc space = " + availableBlocks * blockSize);
                return availableBlocks * blockSize;
            }
        } catch (Exception e) {
            // TODO: handle exception
        }
        return 0L;
    }

//根据字节数生成大小单位

private static String fileSize(long size) {// 从MB开始统计long tmpsize = size / (1024 * 1024);StringBuffer sb = new StringBuffer();if (tmpsize <= 1024) {sb.append(String.valueOf(tmpsize));sb.append("MB");} else {if ((tmpsize / 1024) < 1024) {sb.append(String.valueOf(tmpsize / 1024));sb.append("GB");sb.append(String.valueOf(tmpsize % 1024));sb.append("MB");} else {sb.append(String.valueOf(tmpsize / (1024 * 1024)));sb.append("TB");tmpsize /= 1024;sb.append(String.valueOf(tmpsize / 1024));sb.append("GB");sb.append(String.valueOf(tmpsize % 1024));sb.append("MB");}}Log.d(TAG, "sdc space  = = " + sb.toString());return sb.toString();
}

转载于:https://my.oschina.net/u/2502529/blog/821931

获取磁盘空间大小计算成看k,m,G相关推荐

  1. Linux查看磁盘空间大小的命令

    1.查看磁盘空间大小的命令:df df命令用于查看磁盘分区上的磁盘空间,包括使用了多少,还剩多少,默认单位是KB 比如以下命令: df -hl 执行的结果每列的含义: 第一列Filesystem,磁盘 ...

  2. linux 查看磁盘空间大小命令

    Ubuntu查看文件以及磁盘空间大小管理 (1)查看文件大小 查看当前文件夹下所有文件大小(包括子文件夹) du-sh #du-h 15M./package 16K./.fontconfig 4.0K ...

  3. Ubuntu 查看文件以及磁盘空间大小管理

    (1)查看文件大小  查看当前文件夹下所有文件大小(包括子文件夹)    du -sh # du -h 15M     ./package 16K     ./.fontconfig 4.0K     ...

  4. linux 查看磁盘空间大小

    linux 查看磁盘空间大小 Ubuntu 查看文件以及磁盘空间大小管理 (1)查看文件大小 查看当前文件夹下所有文件大小(包括子文件夹) du -sh du -h 15M ./package 16K ...

  5. Linux:centos释放缓存,查看磁盘空间大小,xxx文件夹, 查看文件夹大小,查看剩余内存,查看xxx软件位置,统计某文件夹,统计某文件夹下目录数量,查看文件夹大小,给文件夹下所有的文件赋值权限

    一台老的PHP后台服务器,今天用 free -m 查看,发现内存跑满了. 再 top,然后按下shift+m,也就是按内存占用百分比排序,发现排在第一的进程,才占用0.9%,那是什么占用的呢?谷歌了一 ...

  6. 增加VirtualBox虚拟机的磁盘空间大小(Host:Win7 VirtualBox5.0.16 VM:Win10)

    1 前言 网上关于增加VirtualBox虚拟机的磁盘空间大小的文章非常非常多,这里我之所以再写一篇,是因为在参照这些文章做的时候,由于VirtualBox的版本更新以及其他一些环境问题,碰到到一些问 ...

  7. linux如何查看磁盘空间大小?

    linux如何查看磁盘空间大小? 坑, 如何查看磁盘的容量大小? df -h

  8. Ubuntu双系统扩大/home磁盘空间大小,gparted移动磁盘位置及大小

    前言: 笔者之前试过挂载磁盘的方法,后开觉得不方便,于是决定用U盘启动盘来扩大空间,花了几个小时终于搞清楚了整个流程,其中在gparted移动磁盘位置的地方卡了很长时间,相关的教程也较少,所以汇总了一 ...

  9. 『Linux笔记』查看磁盘空间大小和所有用户各自占用空间

    目录 1. 使用命令: 2. 命令解析: 3. 显示格式: 4. 相关命令解释: 5. 另外附一些其他命令: 6. 如何查看Linux中各个用户使用的存储空间大小: 1. 使用命令: df -hl 2 ...

最新文章

  1. python可以从事什么工作-学完Python开发可以从事哪些行业?
  2. windows bat脚本中调用Cygwin并执行命令
  3. client高性能组件化框架React简单介绍、特点、环境搭建及经常使用语法
  4. jmeter模拟http请求/发送gzip数据
  5. PS制作棱镜化多边形照片效果
  6. SCPPO(九):性能优化之停工装置按照开工装置更新价格
  7. Servlet 实现验证码
  8. C-Free 5.0注册码
  9. 测试能用的上的录屏软件 不喜勿喷
  10. esp32 调试温度传感器LM75
  11. 个人博客的Travis持续集成之路
  12. 你知道PDF怎么合并吗?这些技巧快来码住
  13. 苹果公司的“多样化”定义:包括加拿大人
  14. 严重: Allocate exception for servlet CustomerServlet java.lang.ClassNotFoundException: cn.itcast.cstm.
  15. Linux 网络状态工具 ss 详解,比netstat更强大
  16. 开源python-向tensorflow-addons学习
  17. 学生成绩计算的c语言,学生成绩标准管理系统C语言.doc
  18. 计算机网络——路由算法
  19. shopxo 文件读取(CNVD-2021-15822)
  20. vue 引入图片出现错误 Cannot find module ‘./XXX.jpg‘e

热门文章

  1. 支持 gRPC 长链接,深度解读 Nacos 2.0 架构设计及新模型
  2. 中科院计算所实习-深度学习方向
  3. 如何看待导师直接说你写的论文就是垃圾?
  4. 1.8M超轻量目标检测模型NanoDet,比YOLO跑得快
  5. 全新的AirPods Pro包邮送!
  6. 直击灵魂!统计学知识十问十答,你都会吗?
  7. 为了不让GPU等CPU,谷歌提出“数据回波”榨干GPU空闲时间,训练速度提升3倍多...
  8. 不需要借助GPU的力量,用树莓派也能实时训练agent玩Atari
  9. 清华博士宅家太无聊,给猫咪讲函数
  10. 中科院自动化所招AI算法实习生!