首页 > 代码库 > Android中关于删除文件以及文件夹的操作

Android中关于删除文件以及文件夹的操作

。。。。。。开始以为删除文件和文件夹会是一样的,同样的找到路径。。。但是只是有那么一点点不一样而已。。。。

首先我们判断是否有SD卡,然后再进行删除:

/**     * 先判断是否有SD卡     * */    private String isSdcard() {        File sdcardDir = null;        boolean isSDExist = Environment.getExternalStorageState().equals(                Environment.MEDIA_MOUNTED);        if (isSDExist) {            // 如果存在SDcard 就找到跟目录            sdcardDir = Environment.getExternalStorageDirectory();            return sdcardDir.toString();        } else {            return null;        }    }    /**     * 删除文件夹所有内容     *      */    public boolean deleteFile(File file) {        System.out.println("file is==>" + file);        boolean isSuccess = false;        if (file.exists()) { // 判断文件是否存在            if (file.isFile()) { // 判断是否是文件                System.out.println("is file");                file.delete(); // delete()方法 你应该知道 是删除的意思;            } else if (file.isDirectory()) { // 否则如果它是一个目录                System.out.println("is dic");                File files[] = file.listFiles(); // 声明目录下所有的文件 files[];                for (int i = 0; i < files.length; i++) { // 遍历目录下所有的文件                    this.deleteFile(files[i]); // 把每个文件 用这个方法进行迭代                }            }            file.delete();            isSuccess = true;        } else {            isSuccess = false;        }        return isSuccess;    }

okay,另外,这里附上截屏方法:

private void CutImage() {        cur_Time = System.currentTimeMillis() / 1000;        // Bitmap-->Drawable        // BitmapDrawable bd = new BitmapDrawable(shot());        // imageView.setBackgroundDrawable(bd);        // 保存Bitmap        if (null == isSdcard()) {            Toast.makeText(this, "内存卡不存在", Toast.LENGTH_SHORT).show();        } else {            Path = isSdcard() + fileName;            String SavePath = Path + mId + "_" + cur_Time + ".jpg";            bmp = shot();            File pathFile = new File(Path);            if (!pathFile.exists()) {                System.out.println("mkdir");                pathFile.mkdir();            }            File file = null;            try {                file = new File(SavePath);                if (!file.exists()) {                    file.createNewFile();                    System.out.println("createNewFile");                }            } catch (Exception e) {                e.printStackTrace();            }            FileOutputStream fos = null;            try {                fos = new FileOutputStream(file);            } catch (Exception e) {                // TODO Auto-generated catch block                e.printStackTrace();            }            if (null != fos) {                bmp.compress(Bitmap.CompressFormat.PNG, 90, fos);                System.out.println("compress");                try {                    fos.flush();                } catch (IOException e) {                    e.printStackTrace();                }                try {                    fos.close();                } catch (IOException e) {                    // TODO Auto-generated catch block                    e.printStackTrace();                }            } else {            }        }    }

还有一种返回Bitmap:

    /**     * 截屏方法     *      * @return     */    private Bitmap shot() {        View view = getWindow().getDecorView();        Display display = this.getWindowManager().getDefaultDisplay();        view.layout(0, 0, display.getWidth(), display.getHeight());        view.setDrawingCacheEnabled(true);// 允许当前窗口保存缓存信息,这样getDrawingCache()方法才会返回一个Bitmap        Bitmap bmp = Bitmap.createBitmap(view.getDrawingCache());        return bmp;    }

 

Android中关于删除文件以及文件夹的操作