zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    2019-6-23-win10-uwp-未给任务-GenerateAppxPackageRecipe-的必需参数-AppxManifestXml-赋值
    2018-8-17-C#-从零开始写-SharpDx-应用-控制台创建-Sharpdx-窗口
    QToolBox
    QListWidget
    宽字节 多字节 mbstowcs wcstombs
    va_start可变参数函数
    c语言二进制、八进制、十六进制
    文件锁 flock/fcntl
    volatile和锁
    串口应用程序
  • 原文地址:https://www.cnblogs.com/superxuezhazha/p/14440400.html
Copyright © 2011-2022 走看看