• Android sdcard文件读写操作


    这次演示以,安卓原生操作系统 Nexus_6手机进行操作:
    这里写图片描述


    AndroidManifest.xml配置相关权限:
    这里写图片描述

        <!-- 增加权限 -->
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
        <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
    
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
        <uses-permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS" />

    关于 /mnt/sdcard/ 与 Environment.getExternalStorageDirectory()获取路径的差异:
    Environment.getExternalStorageDirectory() 在Android手机上获取的路径是:/storage/sdcard/ 或者是 /storage/emulated/0/ 等等;

    其实在Linux文件系统中 /mnt/sdcard/ 去关联了 /storage/sdcard/ 或者是 /storage/emulated/0/ 等等;

    请看图:
    这里写图片描述

    请看图,这个两个路径不同,访问的地址目录确是一模一样的:
    这里写图片描述


    // 在SD卡目录下创建文件
    File file = new File(Environment.getExternalStorageDirectory(), "mysdcard.txt");
    Log.d(TAG, "file.exists():" + file.exists() + " file.getAbsolutePath():"+ file.getAbsolutePath());
    if (file.exists()) {
        file.delete();
        file.createNewFile();
    }
    // Toast.makeText(MainActivity.this, "SD卡目录下创建文件成功...", Toast.LENGTH_LONG).show();
    Log.d(TAG, "SD卡目录下创建文件成功...");
    // 在SD卡目录下的文件,写入内容
    FileWriter fw = new FileWriter(file);
    fw.write("我的sdcard内容.....");
    fw.close();
    // Toast.makeText(MainActivity.this, "SD卡写入内容完成...",Toast.LENGTH_LONG).show();
    Log.d(TAG, "SD卡写入内容完成...");
    // 读取SD卡文件里面的内容
    FileReader fr = new FileReader("/mnt/sdcard/mysdcard.txt");
    BufferedReader r = new BufferedReader(fr);
    String result = r.readLine();
    Log.d(TAG, "SD卡文件里面的内容:" + result);

    执行结果:
    这里写图片描述

    这里写图片描述


    谢谢大家的观看,更多精彩技术博客,会不断的更新,请大家访问,
    刘德利CSDN博客, http://blog.csdn.net/u011967006

  • 相关阅读:
    缓存问题
    基情探测器心得
    新手最常见的误解和错误
    C语言书籍推荐
    初学者编程实战指南 (4) 由一个简单的例子学习抽象
    数据结构的动画演示
    利用IDE使你的代码风格好看一些
    初学者编程实战指南 (2) 避免逻辑的重复
    入门编程语言的选择问题
    关于ACM集训队
  • 原文地址:https://www.cnblogs.com/android-deli/p/10322171.html
Copyright © 2020-2023  润新知