1. 判断SD卡状态和SD卡存储空间大小

当我们在使用SD卡时候,如果我们想往SD卡里读写数据,我们必须在这之前进行一个逻辑判断,那就是判断SD卡状态和SD存储空间大小:

核心代码:

   String status = Environment.getExternalStorageState();
//判断sd卡是否安装
if(Environment.MEDIA_MOUNTED.equals(status)){
//判断sd卡的可用空间
File file = Environment.getExternalStorageDirectory();
long freespace = file.getFreeSpace();//bytes
String info = Formatter.formatFileSize(this, freespace);
Toast.makeText(this, "sd卡可用,剩余空间:"+info, 0).show();
}else{
Toast.makeText(this, "sd卡不可用,不可以读写数据", 0).show();
}

(1)Environment.getExternalStorageState():获得当前外部储存媒体的状态。
注:public static String getExternalStorageState(){……}

(2)

File file = Environment.getExternalStorageDirectory();//获取文件目录抽象表达file  

long freespace = file.getFreeSpace();//获取可用空间大小,返回类型为long  

String info = Formatter.formatFileSize(this, freespace);//转换可用空间大小表达形式 ,返回字符串String

(3)最后容易让我们忽略的就是在AndroidManifest.xml文件中添加SD卡的权限,如下:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

Android(java)学习笔记183:判断SD卡状态和存储空间大小的更多相关文章

  1. Android(java)学习笔记126:判断SD卡状态和SD卡容量

    1. 判断SD卡状态和SD卡存储空间大小 当我们在使用SD卡时候,如果我们想往SD卡里读写数据,我们必须在这之前进行一个逻辑判断,那就是判断SD卡状态和SD存储空间大小: 核心代码: String s ...

  2. android学习笔记47——读写SD卡上的文件

    读写SD卡上的文件 通过Context的openFileInput.openFileOutput来打开文件输入流.输出流时,程序打开的都是应用程序的数据文件夹里的文件,其存储的文件大小可能都比较有限- ...

  3. Android开发之SDCardUtils工具类。java工具详细代码,附源代码。判断SD卡是否挂载等功能

    package com.xiaobing.zhbj.utils; import java.io.BufferedInputStream; import java.io.BufferedOutputSt ...

  4. Android Environment 判断sd卡是否挂载 获取sd卡目录

    在将一个文件存储到sd卡上面的时候,一般需要判断sd是否已经挂载才进行操作. 那么如何判断sd卡已经挂载呢? 我们可以使用Android的Environment类,具体使用如下: if(Environ ...

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

    Android 判断SD卡是否存在及容量查询的简单方法如下: 首先要在AndroidManifest.xml中增加SD卡访问权限 <!-- 在SDCard中创建与删除文件权限 --> &l ...

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

    1.判断SD卡是否存在 返回true表示存在 /* 判断SD卡是否存在 返回true表示存在 */ public boolean avaiableMedia() { String status = E ...

  7. 0028 Java学习笔记-面向对象-Lambda表达式

    匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...

  8. java学习笔记之基础篇

    java选择语句之switch   //switch可以用于等值判断 switch (e) //int ,或则可以自动转化成int 的类型,(byte char short)枚举jdk 7中可以防止字 ...

  9. Android Studio 学习笔记(一)环境搭建、文件目录等相关说明

    Android Studio 学习笔记(一)环境搭建.文件目录等相关说明 引入 对APP开发而言,Android和iOS是两大主流开发平台,其中区别在于 Android用java语言,用Android ...

随机推荐

  1. 李洪强漫谈iOS开发[C语言-031]-逻辑短路

  2. 透过表象看本质!?之二——除了最小p乘,还有PCA

    如图1所示,最小p乘法求得是,而真实值到拟合曲线的距离为.那么,对应的是什么样的数据分析呢? 图1 最小p乘法的使用的误差是.真实值到拟合曲线的距离为 假如存在拟合曲线,设直线方程为.真实值到该曲线的 ...

  3. 【HDOJ】2707 Steganography

    简单字符串,读懂题,很容易AC. #include <stdio.h> #include <string.h> ], line[], des[]; int main() { i ...

  4. wcf中netTcpBinding的元素构成

    <security> of <netTcpBinding> <transport> of <netTcpBinding> <message> ...

  5. MySQL源码 information_schema新增表

    information_schema是MySQL下的DB, 存储了数据库的数据字典,但OS系统上,并没有information_schema下表的数据和结构文件. 所以,MySQL在针对informa ...

  6. bzoj1004

    等价类计数问题首先要构造出群 首先,给出的洗牌法就相当于置换, 再加上置换(1)(2)(3)……(n),可以构成一个包含m+1个置换的置换群: 这里要解释一下构成置换群的四个条件 封闭性 任意两个置换 ...

  7. 【转】你应该知道的十个VirtualBox技巧与高级特性

    原文网址:http://www.searchvirtual.com.cn/showcontent_76463.htm VirtualBox集成的许多功能你可能从来没有使用过,即使你经常用它来运行虚拟机 ...

  8. Linux上使用Qt Creator进行C/C++开发

    目录[-] 1.安装Qt Creator和基础构建环境(以Ubuntu为例): 2.把自动完成快捷键"Ctrl+空格"改为"Alt+/"或者"Shif ...

  9. 16位cpu下主引导扇区及用户程序的编写

    一些约定 主引导扇区代码(0面0道1扇区)加载至0x07c00处 用户程序头部代码需包含以下信息:程序总长度.程序入口.重定位表等信息 用户程序 当虚拟机启动时,在屏幕上显示以下两句话: This i ...

  10. ARM学习笔记6——程序状态寄存器访问指令

    这两条指令结合,可用于对CPSR或SPSR进行读/写操作. 当需要保存或修改当前模式下CPSR或SPSR的内容时,首先必须将这些内容传递到通用寄存器中 1.MRS指令(Move to Register ...