• Android 存储 SD卡


     

     给出关键代码

    public void save(View v) throws IOException {
            //1. 判断sd卡状态, 如果是挂载的状态才继续, 否则提示
            if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
                //2. 读取输入的文件名/内容
                String fileName = et_of_name.getText().toString();
                String content = et_of_content.getText().toString();
                //3. 得到指定文件的OutputStream
                    //1).得到sd卡下的files路径   #参数会区别文件类型,创建对应的文件夹
                String filesPath = getExternalFilesDir(null).getAbsolutePath();
                    //2).组成完整路径
                String filePath = filesPath+"/"+fileName;
                    //3). 创建FileOutputStream
                FileOutputStream fos = new FileOutputStream(filePath);
                //4. 写数据 
                fos.write(content.getBytes("utf-8"));
                fos.close();
                //5. 提示
                Toast.makeText(this, "保存完成", 0).show();
            } else {
                Toast.makeText(this, "sd卡没有挂载", 0).show();
            }
            
        }
    
        public void read(View v) throws Exception {
            
            // 1. 判断sd卡状态, 如果是挂载的状态才继续, 否则提示
            if (Environment.getExternalStorageState().equals(
                    Environment.MEDIA_MOUNTED)) {
                // 2. 读取输入的文件名
                String fileName = et_of_name.getText().toString();
                // 3. 得到指定文件的InputStream
                    // 1).得到sd卡下的files路径
                String filesPath = getExternalFilesDir(null).getAbsolutePath();
                    // 2).组成完整路径
                String filePath = filesPath + "/" + fileName;
                    // 3). 创建FileInputStream
                FileInputStream fis = new FileInputStream(filePath);
                // 4. 读取数据, 成String
                ByteArrayOutputStream baos = new ByteArrayOutputStream();
                byte[] buffer = new byte[1024];
                int len = -1;
                while((len=fis.read(buffer))!=-1) {
                    baos.write(buffer, 0, len);
                }
                String content = baos.toString();
                
                // 5. 显示
                et_of_content.setText(content);
            } else {
                Toast.makeText(this, "sd卡没有挂载", 0).show();
            }
        }
    View Code
  • 相关阅读:
    RegularExpressions(正则表达式)
    IntelliJ Idea工具使用
    JavaScript总结
    Ajax技术基础
    配置Nginx作为反向代理服务器
    SpringBoot下的Dubbo和Zookeeper整合
    springSecurity初识练气初期
    Spring Security拦截器加载流程分析练气中期
    Spring Security认证流程分析练气后期
    springBoot整合spring security+JWT实现单点登录与权限管理前后端分离筑基中期
  • 原文地址:https://www.cnblogs.com/superxuezhazha/p/14440400.html
Copyright © 2020-2023  润新知