Android(java)学习笔记183:判断SD卡状态和存储空间大小
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卡状态和存储空间大小的更多相关文章
- Android(java)学习笔记126:判断SD卡状态和SD卡容量
1. 判断SD卡状态和SD卡存储空间大小 当我们在使用SD卡时候,如果我们想往SD卡里读写数据,我们必须在这之前进行一个逻辑判断,那就是判断SD卡状态和SD存储空间大小: 核心代码: String s ...
- android学习笔记47——读写SD卡上的文件
读写SD卡上的文件 通过Context的openFileInput.openFileOutput来打开文件输入流.输出流时,程序打开的都是应用程序的数据文件夹里的文件,其存储的文件大小可能都比较有限- ...
- Android开发之SDCardUtils工具类。java工具详细代码,附源代码。判断SD卡是否挂载等功能
package com.xiaobing.zhbj.utils; import java.io.BufferedInputStream; import java.io.BufferedOutputSt ...
- Android Environment 判断sd卡是否挂载 获取sd卡目录
在将一个文件存储到sd卡上面的时候,一般需要判断sd是否已经挂载才进行操作. 那么如何判断sd卡已经挂载呢? 我们可以使用Android的Environment类,具体使用如下: if(Environ ...
- Android 判断SD卡是否存在及容量查询
Android 判断SD卡是否存在及容量查询的简单方法如下: 首先要在AndroidManifest.xml中增加SD卡访问权限 <!-- 在SDCard中创建与删除文件权限 --> &l ...
- Android 判断SD卡是否存在和使用容量查询
1.判断SD卡是否存在 返回true表示存在 /* 判断SD卡是否存在 返回true表示存在 */ public boolean avaiableMedia() { String status = E ...
- 0028 Java学习笔记-面向对象-Lambda表达式
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...
- java学习笔记之基础篇
java选择语句之switch //switch可以用于等值判断 switch (e) //int ,或则可以自动转化成int 的类型,(byte char short)枚举jdk 7中可以防止字 ...
- Android Studio 学习笔记(一)环境搭建、文件目录等相关说明
Android Studio 学习笔记(一)环境搭建.文件目录等相关说明 引入 对APP开发而言,Android和iOS是两大主流开发平台,其中区别在于 Android用java语言,用Android ...
随机推荐
- Android 如何把一个 RelativeLayout或ImageView背景设为透明
在项目中,需要把RelativeLayout 和 ImageView背景设置为透明,怎么实现呢?这里主要通过代码,请参阅以下关键代码: public ImageView imgDetail; pri ...
- php中header函数后是否应该有exit
通常有一下三种: 代码如下 复制代码 Location: xxxx:yyyy/zzzz Content-Type: xxxx/yyyy Status: nnn xxxxxx 常用实例 1.实现重定向 ...
- reviewboard搭建
reviewboard的搭建 系统:fedora 19 内核版本:3.9.5-301.fc19.x86_64 步骤 命令 备注 安装mysql # yum -y install mysql mysql ...
- hadoop伪分布安装
解压 将安装包hadoop-2.2.0.tar.gz存放到/home/haozhulin/install/目录下,并解压 #将hadoop解压到/home/haozhulin/install路径下,定 ...
- redhat 6.5 使用其它Linux镜像源的yum源
最近在虚拟机里装了rhel_6.5_x86_64,发现竟然不自带g++,没办法只好 “yum install gcc-c++”,无奈失败,原因是redhat的yum是收费的... 于是打算怒装其它免费 ...
- winform异型不规则界面设计
一,不规则WINFORM窗体 Author:unknown From:Internet在以前版本的Visual Basic或Visual C++中,创建不规则窗体和控件是一件很复杂的事,不仅需要调用大 ...
- Microsoft SQL Server 2008 安装图解(Windows 7)
简介 本文详细记录了一次完整的Microsoft SQL Server 2008在Windows 7操作系统上的安装过程.注意:Microsoft SQL Server 2008与Windows 7操 ...
- Ora-12154:无法解析连接字符串
服务器的环境为: 系统:Windows server 2008 64位 数据库:Oracle 10g WEB应用服务:IIS 7.0+.Net Framework 4.0 解决方法 Toad for ...
- Ruby跳出多层循环 catch...throw
在编码的时候,有时候会遇到嵌套循环的情况,最内部的循环结束的时候,想跳出所有循环,这个时候我们往往采用通过内部循环设置一个flag来控制外部跳出循环条件,比如: #encoding:utf-8 for ...
- JS实现表单输入Enter键转换焦点框
<form> <input type="text" onkeypress="return handleEnter(this, event)"& ...