Android Environment 判断sd卡是否挂载 获取sd卡目录
2024-08-28 03:12:23
在将一个文件存储到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;
} }
最新文章
- CSS3回执特殊图形
- VIM使用(三)
- 解决Ubuntu 下 vi编辑器不能使用方向键和退格键问题
- removeClass() 方法
- 基于 Quartz 开发企业级任务调度应用
- iOS-布局-Masonry-优先级
- js call apply caller callee bind
- php 注入
- 10个最佳的网站和App开发工具
- Delphi调用C++写的dll示例
- maven常见命令总结
- JavaScript实现评论点赞功能
- Android NFC技术(三)——初次开发Android NFC你须知道NdefMessage和NdefRecord
- lcd驱动框架
- pythonのgevent同步异步区别
- MATLAB矩阵的LU分解及在解线性方程组中的应用
- mysql索引使用
- java中synchronized 用在实例方法和对象方法上面的区别
- MySQL安装与初步操作
- (原)android修改文件所属的用户组