Android对sdcard扩展卡文件的操作其实就是普通的文件操作,但是仍然有些地方需要注意。比如:
1.加入sdcard操作权限;
2.确认sdcard的存在;
3.不能直接在非sdcard的根目录创建文件,而是需要先创建目录,再创建文件;
实例如下:
(1)在AndroidManifest.xml添加sdcard操作权限
<!-- sdcard权限 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
(2)变量声明:
private final static String PATH = "/sdcard/digu"; private final static String FILENAME = "/notes.txt";
(3)向sdcard写文件:
/** * 写文件 */ 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"); } }