Android对sdcard扩展卡文件操作实例详解

时间:2022-05-02 15:02:47

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");
   }
 }