SD卡可用空间大小的判断

	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		File path = Environment.getExternalStorageDirectory();
		/*StatFs:
		 * Retrieve overall information about the space on a filesystem.
		 *  This is a wrapper for Unix statfs().
		 * 获取文件系统中空间的所有信息(对于android而言,就是获取sd卡或者内存的空间使用情况)
		 * ------------------------------------------------------------
		 * 这个类实际上就是模拟了linux系统的df命令。df命令的功能:检查文件系统的磁盘空间占用情况。
		 * 可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
		 */
		StatFs statFs=new StatFs(path.getPath());
		//返回一个当前区块的大小
		long blockSize=statFs.getBlockSize();
		//区块的个数
		long totalBlocks=statFs.getBlockCount();
		//可用区块的个数
		long availableBlocks=statFs.getAvailableBlocks();
		//获得的是可用sd卡的存储空间
		String str=Formatter.formatFileSize(this, blockSize*availableBlocks);
		System.out.println("sd卡的可用存储空间:"+str);
		TextView textView=(TextView) this.findViewById(R.id.TextView1);
		textView.setText(str);

	}

貌似新的api有问题。这里面的三个核心方法,经测试已过时,但新的api不好使。

SD卡可用空间大小的判断,布布扣,bubuko.com

时间: 2024-12-16 11:47:33

SD卡可用空间大小的判断的相关文章

android 判断手机中是否有SD卡,USB。静态判断

public static String getSDPath(Context context) { String sd = null; StorageManager storageManager = (StorageManager) context .getSystemService(Context.STORAGE_SERVICE); StorageVolume[] volumes = storageManager.getVolumeList(); for (int i = 0; i < vol

Android基础--获取SD卡可用容量

import java.io.File; import android.os.Build; import android.os.Bundle; import android.os.Environment; import android.os.StatFs; import android.app.Activity; import android.text.format.Formatter; import android.view.Menu; import android.widget.TextVi

Android 判断SD卡是否存在和使用容量查询

1.判断SD卡是否存在 返回true表示存在 1 /* 判断SD卡是否存在 返回true表示存在 */ 2 public boolean avaiableMedia() { 3 String status = Environment.getExternalStorageState(); 4 5 if (status.equals(Environment.MEDIA_MOUNTED)) { 6 return true; 7 } else { 8 return false; 9 } 10 } 2.获

Android 判断SD卡是否存在及容量查询

Android 判断SD卡是否存在及容量查询的简单方法如下: 首先要在AndroidManifest.xml中增加SD卡访问权限 [html] view plaincopy <!-- 在SDCard中创建与删除文件权限 --> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> <!-- 往SDCard写入数据权限 --> <uses-pe

Android学习笔记-获取手机内存,SD卡存储空间。

前面介绍到如何保存数据到手机内存或者SD卡,但是问题是,在保存以前,我们还需要对他们的空间(可用空间),进行判断,才可以进行后续操作,所以,本节我们就介绍如何获取手机内存以及Sd卡的空间. //这时获取手机内存的 // File path = Environment.getDataDirectory(); //这时获取SD卡的空间 File path = Environment.getExternalStorageDirectory(); StatFs stat = new StatFs(pat

Android设备网络、屏幕尺寸、SD卡、本地IP、存储空间等信息获取工具类

Android设备网络.屏幕尺寸.SD卡.本地IP.存储空间.服务.进程.应用包名等信息获取的整合工具类. 1 package com.qiyu.ddb.util; 2 3 import android.annotation.SuppressLint; 4 import android.annotation.TargetApi; 5 import android.app.Activity; 6 import android.app.ActivityManager; 7 import androi

Android设备内存和SD卡操作工具类

package cc.c; import java.io.File; import java.util.List; import android.os.StatFs; import java.io.FileReader; import java.io.IOException; import java.io.BufferedReader; import android.os.Environment; import android.content.Context; import android.ap

安卓工具类------&gt;SD卡相关的辅助类

import java.io.File; import android.os.Environment; import android.os.StatFs; //SD卡相关的辅助类 public class SDCardUtils { private SDCardUtils() { /* cannot be instantiated */ throw new UnsupportedOperationException("cannot be instantiated"); } /** *

第36章 SDIO—SD卡读写测试

第36章     SDIO-SD卡读写测试 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 本章参考资料:<STM32F4xx参考手册>.<STM32F4xx规格书>.库帮助文档<stm32f4xx_dsp_stdperiph_lib_um.chm>以及SD简易规格文件<Physical Layer Simplified Specificatio