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 android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
	<!-- 往SDCard中写入数据的权限 -->
	<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
3.判断SDCard状态(SDCard可能为写保护,或者没有插入SDCard)


 

//向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();
				}


 

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值