星空网 > 软件开发 > 操作系统

Android 在外部存储读写文件

本文主要介绍android如何在外部存储读写数据

sd卡的路径

sdcard:2.3之前的sd卡路径

mnt/sdcard:4.3之前的sd卡路径

storage/sdcard:4.3之后的sd卡路径

打开file explorer

Android 在外部存储读写文件images/loading.gif' data-original="http://images2015.cnblogs.com/blog/617081/201606/617081-20160601144447555-1518710508.jpg" />

可以看到sdcard是个空的文件夹,因为这个文件夹是个快捷方式,指向/storag文件夹,接着打开storag文件夹

Android 在外部存储读写文件

读写sd卡

最简单的打开sd卡的方式

File file = new File("sdcard/info.txt");

* 写sd卡需要权限

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

Android 在外部存储读写文件

运行程序

Android 在外部存储读写文件

* 读sd卡,在4.0之前不需要权限,4.0之后可以设置为需要

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

Android 在外部存储读写文件

Android 在外部存储读写文件

通过api获取sd卡的路径

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

Environment.getExternalStorageDirectory()

* 判断sd卡是否准备就绪

if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))

完整代码如下:

  public void saveAccount(String name, String pass) {    // 判断sd卡状态    if (Environment.getExternalStorageState().equals(        Environment.MEDIA_MOUNTED)) {      // 得到一个file对象,路径是sd卡的真实路径      File file = new File("sdcard/info.txt");      try {        FileOutputStream fos = new FileOutputStream(file);        fos.write((name + "##" + pass).getBytes());        fos.close();      } catch (Exception e) {        e.printStackTrace();      }    } else {      Toast.makeText(this, "sd卡不可用哟", 0).show();    }  }  public void loadAccount() {    File file = new File("sdcard/info.txt");    if (file.exists()) {      try {        FileInputStream fis = new FileInputStream(file);        // 把字节流转换为字节流        BufferedReader br = new BufferedReader(new InputStreamReader(            fis));        String text = br.readLine();        String[] s = text.split("##");        // 获取用户输入的账号和密码        EditText et_name = (EditText) findViewById(R.id.et_name);        EditText et_pass = (EditText) findViewById(R.id.et_pass);        et_name.setText(s[0]);        et_pass.setText(s[1]);      } catch (Exception e) {        e.printStackTrace();      }    }  }

 




原标题:Android 在外部存储读写文件

关键词:Android

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流