• 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;
        }
  • 相关阅读:
    【C++程序员学 python】python 的文件类型
    Python如何下载文件
    【C++程序员学 python】python split and join 分割与合并
    知道创宇研发技能表v2.1
    Scapy:局域网MAC地址扫描脚本
    LeetCode: Linked List Cycle II 解题报告
    LeetCode: Insertion Sort List 解题报告
    Lintcode: Minimum Adjustment Cost 解题报告
    LeetCode: Merge Two Sorted Lists 解题报告
    LeetCode: Palindrome Partitioning II 解题报告
  • 原文地址:https://www.cnblogs.com/Catherine-Brain/p/3861590.html
Copyright © 2020-2023  润新知