zoukankan      html  css  js  c++  java
  • Android开发之SD卡上文件操作

    1. 得到存储设备的目录:/SDCARD(一般情况下)

    SDPATH=Environment.getExternalStorageDirectory()+"/";

    2. 判断SD卡上的文件夹是否存在:通过File对象的exists()方法。

      /**
       * 判断文件是否已经存在;
       *
      /
      public boolean checkFileExists(String filepath) {
             File file=new File(SDPATH+filepath);
             return file.exists();
        }

    3.在SD卡上创建目录:通过File对象的mkdir()方法实现。

      /*
       * 在SD卡上创建目录;
       */
      public File createDIR(String dirpath) {
        File dir=new File(SDPATH+dirpath);
        dir.mkdir();
        return dir;
    }

    4.在SD卡上创建文件:通过File对象的createNewFile()方法实现。
      /*
       * 在SD卡上创建文件;
       */
         public File createFile(String filepath) throws IOException{
          File file=new File(SDPATH+filepath);
               file.createNewFile();
               return file;
         }

    5.将InputStream字节流写入到SD卡文件中
         /**
          * 将一个InputStream中的数据写入至SD卡中
          */
       public File writeStreamToSDCard(String dirpath,String filename,InputStream input) {
                 File file = null;
                 OutputStream output=null;
                  try {
                      //创建目录;
                      createDIR(dirpath);
                      //在创建 的目录上创建文件;
                      file = createFile(dirpath+filename);
                      output=new FileOutputStream(file);
                      byte[]bt=new byte[4*1024];
                      while (input.read(bt)!=-1) {
                         output.write(bt);
                      }
                    //刷新缓存,
                      output.flush();
                  } catch (IOException e) {
                      e.printStackTrace();
                  }
                  finally{

                      try{
                  output.close();
                      }
              catch (Exception e) {
                         e.printStackTrace();
                      }
                  }

                 return file;

        }


    6. 访问的权限:
    需在AndroidManifest中加上:
    <uses-permission android:name="android.permission.INTERNET"></uses-permission>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>

  • 相关阅读:
    二进制安装postgresql
    php mongodb扩展安装
    coinbase交易冻结时间
    linux服务器及工具常用命令
    PM2下使用 执行npm命令
    phpstorm安装PHP_CodeSniffer
    TP5 save遍历更新,过滤相邻重复字段,问题汇总
    mysqlbinlog 数据恢复
    设计模式之状态机模式
    关于c++中sleep_for函数的总结分析
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3367911.html
Copyright © 2011-2022 走看看