Android对sdcard扩展卡文件的操作其实就是普通的文件操作,但是仍然有些地方需要注意。比如:
1.加入sdcard操作权限;
2.确认sdcard的存在;
3.不能直接在非sdcard的根目录创建文件,而是需要先创建目录,再创建文件;
实例如下:
(1)在AndroidManifest.xml添加sdcard操作权限
1
2
|
<!-- sdcard权限 -->
<uses-permission android:name= "android.permission.WRITE_EXTERNAL_STORAGE" ></uses-permission>
|
(2)变量声明:
1
2
|
private final static String PATH = "/sdcard/digu" ;
private final static String FILENAME = "/notes.txt" ;
|
(3)向sdcard写文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
/**
* 写文件
*/
private void onWrite() {
try {
Log.d(LOG_TAG, "Start Write" );
//1.判断是否存在sdcard
if (Environment.MEDIA_MOUNTED.equals(Environment
.getExternalStorageState())) {
//目录
File path = new File(PATH);
//文件
File f = new File(PATH + FILENAME);
if (!path.exists()){
//2.创建目录,可以在应用启动的时候创建
path.mkdirs();
}
if (!f.exists()) {
//3.创建文件
f.createNewFile();
}
OutputStreamWriter osw = new OutputStreamWriter(
new FileOutputStream(f));
//4.写文件,从EditView获得文本值
osw.write(editor.getText().toString());
osw.close();
}
} catch (Exception e) {
Log.d(LOG_TAG, "file create error" );
}
}
|