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>

  • 相关阅读:
    usb驱动之打印usb设备信息(一)
    驱动的分离分层设计——按键点灯
    三极管(7)之开关电路详解
    电阻(4)之上拉电阻与下拉电阻详解
    电感的能量储存在哪里-史上最深度的解析(6)
    电感的能量储存在哪里-深度解析(4)
    电容(2)旁路电容工作原理深度解析
    555定时器(1)单稳态触发器电路及Multisim实例仿真
    N沟通场效应管深度图解(1)工作原理及Multisim实例仿真
    开关电源(1)之BUCK降压变换器工作原理及Multisim实例仿真
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3367911.html
Copyright © 2011-2022 走看看