android下获取手机空间大小 代码

 获得手机内容空间 大小 代码 
 1 public class MainActivity extends Activity {
 2 
 3     
 4     private TextView tv_01;
 5     @Override
 6     protected void onCreate(Bundle savedInstanceState) {
 7         super.onCreate(savedInstanceState);
 8         setContentView(R.layout.activity_main);
 9         
10         tv_01 = (TextView) findViewById(R.id.tv_01);
11         
12         // 得到 SD卡的信息
13         // Environment.getExternalStorageDirectory() 返回路径 /mnt/sdcard
14         File sdcardFileDir = Environment.getExternalStorageDirectory();
15         String SDmemory = getMemory(sdcardFileDir);
16         
17         // 得到 手机内部存储空间 
18         // Environment.getDataDirectory()   返回路径   /data
19         File dataFileDir = Environment.getDataDirectory();
20         String dataMemory = getMemory(dataFileDir);
21         
22         tv_01.setText("SD卡 "+SDmemory+"\n手机内部 "+dataMemory);
23     }
24 
25     
26     public String getMemory(File path){
27         
28         // path.getPath() 返回 该 文件的路径 
29         // 获得  该路径下 磁盘状态 
30         // statFs  检索文件系统的整个信息空间 
31         StatFs stat = new StatFs(path.getPath());
32         // 获得 每个扇区的带大小 
33         
34         // 在较高版本的 系统中 提示 getBlockSize 过时,需要使用getBlockSizeLong()下面的方法类似 
35         // 但是如果在低版本的系统中 使用 getBlockSizeLong() 可能会出现编译错误
36         long blockSize = stat.getBlockSize();    
37         // 获得总共有多少个扇区
38         long totalBlocks = stat.getBlockCount();    
39         // 获得 可用扇区
40         long avaiableBlocks = stat.getAvailableBlocks();    
41         
42         //总空间 
43         
44         String totalMemory = Formatter.formatFileSize(this, blockSize * totalBlocks);
45         
46         // 可用空间  
47         
48         String avaiableMemory = Formatter.formatFileSize(this, totalBlocks*avaiableBlocks);
49             
50         return "总空间:"+totalMemory+"\n"+"可用空间:"+avaiableMemory;
51     }
52 
53 }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值