• Android 将文件保存到SD卡,从卡中取文件,及删除文件


    //保存到SD卡  

      private static String sdState = Environment.getExternalStorageState();
        private static String path = Environment.getExternalStorageDirectory().toString();
        public static void saveBitmap(Bitmap bitmap,String imageName)
        { 
         File file;
         File PicName;
         if(sdState.equals(Environment.MEDIA_MOUNTED))
         {
          //获得sd卡根目录
          file = new File(path + "/Huai/TicketsPic");
          if(!file.exists())
          {
           file.mkdirs();
          }
          PicName = new File(file, imageName);
          try {
           if(!PicName.exists())
           {
            PicName.createNewFile();
           }
        FileOutputStream fos = new FileOutputStream(PicName);
        if(PicName.getName().endsWith(".png"))
        {
         bitmap.compress(CompressFormat.PNG, 100, fos);
        }
        else if(PicName.getName().endsWith(".jpg"))
        {
         bitmap.compress(CompressFormat.JPEG, 100, fos);
        }
        fos.flush();
        fos.close();
       } catch (FileNotFoundException e) {
        e.printStackTrace();
       } catch (IOException e) {
        e.printStackTrace();
       }     
         }
        }

       //从SD卡取
        public static Bitmap getBitmap(String imageName)
        {
         Bitmap bitmap = null;
         File imagePic;
         if(sdState.equals(Environment.MEDIA_MOUNTED))
         {
          
          imagePic = new File(path + "/Huai/TicketsPic", imageName);
          if(imagePic.exists())
          {
           try {
            bitmap = BitmapFactory.decodeStream(new FileInputStream(imagePic));
           } catch (FileNotFoundException e) {
    //        e.printStackTrace();
           }
          }
         }
      return bitmap;
        }
        //将SD卡文件删除
        public static void  deleteFile(File file)
        {
         if(sdState.equals(Environment.MEDIA_MOUNTED))
         {
          if (file.exists())
          {
           if (file.isFile())
           {
            file.delete();
           }
           // 如果它是一个目录
           else if (file.isDirectory())
           {
            // 声明目录下所有的文件 files[];
            File files[] = file.listFiles();
            for (int i = 0; i < files.length; i++)
            { // 遍历目录下所有的文件
             deleteFile(files[i]); // 把每个文件 用这个方法进行迭代
            }
           }
           file.delete();
          }
         }
        }

     

    转载地址:http://blog.sina.com.cn/s/blog_a72ec20c01015rwj.html

  • 相关阅读:
    JS判断数组中是否有重复元素的方法
    根据类名找到元素
    JS获取页面元素并修改
    JS实现会动的小车
    动态规划------最长公共子串(连续)
    动态规划------最长递增子序列
    买卖股票的最佳时期
    操作系统清华大学版笔记(十一)死锁、银行家算法和进程间通信(直接通信、间接通信)
    128 最长连续序列
    链表------删除有序单链表中重复的节点
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3165585.html
Copyright © 2020-2023  润新知