Android学习(15) --在外部存储读写数据相关

本文介绍了不同Android版本中SD卡路径的变化,并说明了如何在应用程序中读写SD卡数据。详细列举了从2.3到4.3版本中SD卡路径的不同表示方式,以及在4.0及以后版本中读写SD卡所需的权限设置。此外,还提供了检查SD卡状态的方法。

在外部存储读写数据

sd卡的路径

  • sdcard:2.3之前的sd卡路径
  • mnt/sdcard:4.3之前的sd卡路径
  • storage/sdcard:4.3之后的sd卡路径

  • 最简单的打开sd卡的方式

    File file = new File("sdcard/info.txt");
    
  • 写sd卡需要权限

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    
  • 读sd卡,在4.0之前不需要权限,4.0之后可以设置为需要

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    

在4.0之后,在设置中的开发者选项中,出现了“保护SD选项”,用于保护SD数据被读取,所以才有的读SD卡权限
这里写图片描述

  • 使用api获得sd卡的真实路径,部分手机品牌会更改sd卡的路径

    Environment.getExternalStorageDirectory()
    
  • 判断sd卡是否准备就绪

    if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))
    
        //MEDIA_UNKNOWN:不能识别sd卡
        //MEDIA_REMOVED:没有sd卡
        //MEDIA_UNMOUNTED:sd卡存在但是没有挂载
        //MEDIA_CHECKING:sd卡正在准备
        //MEDIA_MOUNTED:sd卡已经挂载,可用
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值