在将一个文件存储到sd卡上面的时候,一般需要判断sd是否已经挂载才进行操作。

那么如何判断sd卡已经挂载呢?

我们可以使用Android的Environment类,具体使用如下:

        if(Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) {//如果已经挂载
//sd卡已经挂载,可以进行读写操作了
} else {
//sd未挂载,在此进行提示
}

还有一点,手机上不一定只有一个sd卡,或者手机上的sd卡名称不一定都是sdcard,因此,Android系统给我们封装了一个方法专门获取sd卡的路径。

//使用Environment的方法
String sdcardPath = Environment.getExternalStorageDirectory();

附 Android对sd卡的写操作:

package com.wuyou.saveSD;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException; import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.view.Menu;
import android.widget.Toast; public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); if(Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) {//如果已经挂载
//sd卡已经挂载,可以进行读写操作了
try {
File file = new File(Environment.getExternalStorageDirectory(), "test2.txt");
FileWriter fileWriter = new FileWriter(file);
fileWriter.write("无忧之路 - 博客园");
fileWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
} else {
//sd未挂载,在此进行提示
Toast.makeText(this, "sd卡不可用,请检查!", Toast.LENGTH_SHORT).show();
} } @Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
} }

Android Environment 判断sd卡是否挂载 获取sd卡目录的更多相关文章

  1. MTK Android 读取SIM卡参数,获取sim卡运营商信息

    android 获取sim卡运营商信息(转)   TelephonyManager tm = (TelephonyManager)Context.getSystemService(Context.TE ...

  2. Android:创建文件或文件夹以及获取sd卡根目录

    目录结构: 功能,可以根据录入的目录或者文件夹生成相应的文件或者文件夹 首先需要添加一个权限: <uses-permission android:name="android.permi ...

  3. 无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)

    1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name= ...

  4. Android开发学习---如何写数据到外部存储设备(sd卡),Environment.getExternalStorageDirectory,怎么获取sd卡的大小?

    本文主要介绍如何写数据到sd卡,这里主要到的技术是Environment中的方法. 1. 2.实现代码: /datasave/src/com/amos/datasave/savePasswordSer ...

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

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

  6. Android为TV端助力 关于4.0之后不能直接获取SD卡外部存储路径的问题

    Environment.getExternalStorageDirectory()是Android 2.x时代的产物,那时Android主流设备只有很小的内置存储器,然后都会外置一张sd卡,那时这个方 ...

  7. android 获取sd卡根目录

    dir:/storage/emulated/0 也就是 sdcard目录 ====== android 获取sd卡根目录 public String getSDPath(){        File ...

  8. Android获取SD卡路径及SDCard内存的方法

    这篇文章主要介绍了Android获取SD卡路径及SDCard内存的方法,较为详细的分析了Android针对SD卡操作所涉及的类及其具体函数功能,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了A ...

  9. Android 获取SD卡路径和推断SD卡是否存在

    android获取sd卡路径方法: 不建议直接写死android sd卡的路径. public String getSDPath(){ File sdDir = null; boolean sdCar ...

随机推荐

  1. js数组&&字符串&&定时器2

    一.系统时间对象Date 方法 描述 Date() 返回当日的日期和时间. getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31). getDay() 从 Date 对象返回一周 ...

  2. 通过js实时检测文本框内容

    思路 1,在获取文本框焦点后,启动定时器,每隔100毫秒来查看文本内容的改变 2,在文本框失去焦点后,清除定时器 下面是一个简单的例子 <!DOCTYPE html> <html&g ...

  3. win向linux传文件

    使用pscp.exe即可. 下载pscp.exe(http://pan.baidu.com/s/1jG6zmx4) 复制到windows/system32目录下即可. 然后可在cmd命令行下使用psc ...

  4. 如何重写EF DBContext 获取链接字符串的方法

    public partial class byvarDBFirst: DbContext { //使用自定义连接串 private static string GetEFConnctionString ...

  5. Apache + Tomcat + mod_jk实现集群服务及session共享

    实现效果:用apache 分发请求到tomcat中的对应的项目 原理:

  6. Objective-C description的用法

    description类似于.net/java ToString()方法的用途. 假设有一个CTPerson类, - (NSString *)description { return @"d ...

  7. javaScript笔记1

    一.通过 id 访问HTML元素,可以使用 document.getElementById(id) 方法. 例子: <body> <button id="mybtn&quo ...

  8. maven打war包注意之xml、properties文件没打进去解决方法

    maven项目在ide中编译出的war包一般不会有很多问题. 但是经过集成环境打war包会出现war包中打不进xml.properties等文件.这样打war包不会报错,但是war包放进tomcat中 ...

  9. SGU 218.Unstable Systems

    题意: 有n(n<500)台机器,和500个程序.不同的程序在不同的机器上运行有着不同的不稳定度s[i][j].求最小的最大稳定度及其方案. Solution: 比较经典的二分图模型. 建图很简 ...

  10. docker中搭建jenkins环境

    想在docker中搭建一个jenkins环境.开始的时候我想在先pull centos,然后在里面自己搭建环境,搭建后的环境可以运行,但是不知道挂载哪的数据,这也是我不熟悉jenkins的原因. 同事 ...