Android获取SD卡总容量,可用大小,机身内存总容量及可用大小的系统方法

可能有的同学不知道系统已经提供了获取获取SD卡总容量,可用大小,机身内存总容量及可用大小的系统方法,用系统源代码提供的方法可以很简单,方便的获取其大小。这里我把系统源代码中的一个方法贴出来,供大家参考一下:

图片上

图片上红色方框中的代码就是源代码中获取SD卡大小的程序方法。

在这里我整理了一下,我把我整理封装好的方法给大家贴出来:

  1. /** 
  2.      * 获得SD卡总大小 
  3.      *  
  4.      * @return 
  5.      */  
  6.     private String getSDTotalSize() {  
  7.         File path = Environment.getExternalStorageDirectory();  
  8.         StatFs stat = new StatFs(path.getPath());  
  9.         long blockSize = stat.getBlockSize();  
  10.         long totalBlocks = stat.getBlockCount();  
  11.         return Formatter.formatFileSize(MainActivity.this, blockSize * totalBlocks);  
  12.     }  
  13.   
  14.     /** 
  15.      * 获得sd卡剩余容量,即可用大小 
  16.      *  
  17.      * @return 
  18.      */  
  19.     private String getSDAvailableSize() {  
  20.         File path = Environment.getExternalStorageDirectory();  
  21.         StatFs stat = new StatFs(path.getPath());  
  22.         long blockSize = stat.getBlockSize();  
  23.         long availableBlocks = stat.getAvailableBlocks();  
  24.         return Formatter.formatFileSize(MainActivity.this, blockSize * availableBlocks);  
  25.     }  
  26.   
  27.     /** 
  28.      * 获得机身内容总大小 
  29.      *  
  30.      * @return 
  31.      */  
  32.     private String getRomTotalSize() {  
  33.         File path = Environment.getDataDirectory();  
  34.         StatFs stat = new StatFs(path.getPath());  
  35.         long blockSize = stat.getBlockSize();  
  36.         long totalBlocks = stat.getBlockCount();  
  37.         return Formatter.formatFileSize(MainActivity.this, blockSize * totalBlocks);  
  38.     }  
  39.   
  40.     /** 
  41.      * 获得机身可用内存 
  42.      *  
  43.      * @return 
  44.      */  
  45.     private String getRomAvailableSize() {  
  46.         File path = Environment.getDataDirectory();  
  47.         StatFs stat = new StatFs(path.getPath());  
  48.         long blockSize = stat.getBlockSize();  
  49.         long availableBlocks = stat.getAvailableBlocks();  
  50.         return Formatter.formatFileSize(MainActivity.this, blockSize * availableBlocks);  
  51.     }  


转载请说明出处。 来源:http://blog.csdn.net/loongggdroid/article/details/12304695

非著名程序员可能是东半球最好的技术分享公众号。每天,每周定时推送一些有关移动开发的原创文章和教程,微信号:smart_android。
原文地址:https://www.cnblogs.com/loonggg/p/3352207.html