Android编程实现向SD卡写入数据的方法

2019-12-10 18:21:59王冬梅
易采站长站为您分析Android编程实现向SD卡写入数据的方法,涉及Android针对SD卡状态判断,文件及权限操作等相关技巧,需要的朋友可以参考下  

本文实例讲述了Android编程实现向SD卡写入数据的方法。,具体如下:

1.代码:

/**
* 向sdcard中写入文件
* @param filename 文件名
* @param content 文件内容
*/
public void saveToSDCard(String filename,String content) throws Exception{
    File file=new File("/mnt/sdcard", filename);
    OutputStream out=new FileOutputStream(file);
    out.write(content.getBytes());
    out.close();
}

sdcard对应的文件路径:"/mnt/sdcard",开发时不要写SDCard的绝对路径,因为路径会因为版本的改变而改变,这里应该使用以下方法获得SDCard的路径
对应上一段代码修改如下

/**
* 向sdcard中写入文件
* @param filename 文件名
* @param content 文件内容
*/
public void saveToSDCard(String filename,String content) throws Exception{
    File file=new File(Environment.getExternalStorageDirectory(), filename);
    OutputStream out=new FileOutputStream(file);
    out.write(content.getBytes());
    out.close();
}

2.获得权限:

<!-- 在SDCard中创建于删除文件的权限 -->
<uses-permission <a href="http://www.easck.com/base/15" class="replace_word" style="margin: 0px; padding: 0px; line-height: 25.2px; width: 660px; overflow: hidden; clear: both;">
		
//向SDCard中保存
String en=Environment.getExternalStorageState();
//获取SDCard状态,如果SDCard插入了手机且为非写保护状态
if(en.equals(Environment.MEDIA_MOUNTED)){
  try {
    service.saveToSDCard(filename, content);
    Toast.makeText(getApplicationContext(), "保存成功", 1).show();
  } catch (Exception e) {
    Toast.makeText(getApplicationContext(), "保存失败", 1).show();
  }
}else{
  //提示用户SDCard不存在或者为写保护状态
  Toast.makeText(getApplicationContext(), "SDCard不存在或者为写保护状态", 1).show();
}