zoukankan      html  css  js  c++  java
  • Android 判断SD卡是否存在及容量查询

    Android 判断SD卡是否存在及容量查询的简单方法如下:
    首先要在AndroidManifest.xml中增加SD卡访问权限

    <!-- 在SDCard中创建与删除文件权限 -->
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
    <!-- 往SDCard写入数据权限 -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>&nbsp;

    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
        }    
  • 相关阅读:
    ICC_lab总结——ICC_lab1:数据设置和基本流程
    数字集成电路物理设计学习总结——时钟树综合
    数字集成电路物理设计学习总结——布图规划和布局
    Sublime Text 最佳插件列表
    Eclipse中10个最有用的快捷键组合
    MyEclipse使用总结——修改MyEclipse默认的Servlet和jsp代码模板
    XML回顾
    Day05_JAVAEE系列:XML
    Day05_JAVAEE系列:Junit
    Git命令
  • 原文地址:https://www.cnblogs.com/sishuiliuyun/p/2876574.html
Copyright © 2011-2022 走看看