package com.baize.love.utils;import android.os.Environment;import android.text.TextUtils;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStreamReader;import java.text.DecimalFormat;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;/** * 文件工具类 * Created by lxb on 2017/4/11. */public class FileUtils {    public static Map,List> allFilesDict = null;    /**     * 删除文件     *     * @param path     * @return     */    public static boolean deleteFile(String path) {        if (isBlank(path)) {            return true;        }        File file = new File(path);        return deleteFile(file);    }    /**     * 删除文件     *     * @param file     * @return     */    public static boolean deleteFile(File file) {        if (!file.exists()) {            return true;        }        if (file.isFile()) {            return file.delete();        }        if (!file.isDirectory()) {            return false;        }        for (File f : file.listFiles()) {            if (f.isFile()) {                f.delete();            } else if (f.isDirectory()) {                deleteFile(f.getAbsolutePath()); //递归            }        }        return file.delete();    }    public static boolean isBlank(String str) {        return (str == null || str.trim().length() == 0);    }    /**     * 根据文件路径判断文件是否存在     *     * @param path     * @return     */    public static boolean isExit(String path) {        File file = null;        try {            file = new File(path);            return file.exists();        } catch (Exception e) {            e.printStackTrace();        }        return false;    }    /**     * 根据指定目录获取当前文件夹下所有文件     * @param dir 当前目录     * @return     */    public static Map,List> getAllFilePath(String dir){        File tmpFileObj = new File(dir);        if(tmpFileObj.exists()){            File[] files = tmpFileObj.listFiles();            if (files.length == 0) {                BZLogUtils.getInstance().print("文件夹是空的!");                return null;            } else {                String key = null;                List tmpFileList = null;                for (File file2 : files) {                    if (file2.isDirectory()) {                        tmpFileList = new ArrayList<>();                        String fileDir = file2.getAbsolutePath();                        key = fileDir.substring(fileDir.lastIndexOf("/") + 1,fileDir.length());                        BZLogUtils.getInstance().print("文件夹:" + file2.getAbsolutePath() + "  key: "+key);                        getAllFilePath(file2.getAbsolutePath());        //递归查找当前目录的子目录                    } else {                        String fileDir = file2.getParent();                        key = fileDir.substring(fileDir.lastIndexOf("/") + 1,fileDir.length());                        if(tmpFileList == null){                            tmpFileList = new ArrayList<>();                        }                        tmpFileList.add(file2.getAbsolutePath());                        getAllFileDict().put(key,tmpFileList);                        BZLogUtils.getInstance().print("文件:" + file2.getAbsolutePath() + " 目录:" + key);                    }                }                BZLogUtils.getInstance().print("size:"+getAllFileDict().size());            }        } else {            BZLogUtils.getInstance().print("文件不存在!");        }        return getAllFileDict();    }    /**     * 获取所有文件字典     *     * @return     */    public static Map,List> getAllFileDict(){        if(allFilesDict == null){            allFilesDict = new HashMap<>();        }        return allFilesDict;    }    public static void recycRes(){        allFilesDict = null;    }    /**     * 创建建筑物路径     *     * @param dir 目录     * @param fileName 文件名     * @return     */    public static String createBuildPath(String dir,String fileName) {        return Environment.getExternalStorageDirectory() + "/BZLove/" + dir + "/" + fileName;    }    /**     * 创建目录     * @param dir     * @return     */    public static String createDir(String dir){        String tmpDir = Environment.getExternalStorageDirectory() + "/BZLove/" + dir + "/";        File file = new File(tmpDir);        if(!file.exists()){            if(file.mkdirs()){                return tmpDir;            }            BZLogUtils.getInstance().print("创建目录失败");            return null;        }        return tmpDir;    }    /**     * 获取存在建筑物的根目录     * @return     */    public static String getBuildRootDir(){        String tmpDir = Environment.getExternalStorageDirectory() + "/BZLove/";        File file = new File(tmpDir);        if(!file.exists()){            if(file.mkdirs()){                return tmpDir;            }            BZLogUtils.getInstance().print("创建目录失败");            return null;        }        return null;    }}

更多相关文章

  1. Android(安卓)简易文件选择Dialog
  2. android设置全屏模式
  3. android studio 复制项目
  4. 在Android中创建文件
  5. Android(安卓)Studio 无法编译,出现下列错误提示的解决方案。
  6. android的Http请求组件
  7. Android(安卓)ADB emulator-5554 unauthorized
  8. Android(安卓)删除指定文件代码
  9. Android中NDK的使用方法

随机推荐

  1. Android(安卓)跳转界面 自动弹出输入框
  2. Android(安卓)Java COOKIES
  3. Android(安卓)读取SIM卡参数
  4. Android(安卓)Activities and Tasks seri
  5. android在处理一写图片资源
  6. Android(安卓)上传文件[转]
  7. android图片拖动
  8. android获取3G或wifi流量信息
  9. 2013.12.03(6) ——— android ActionbarSh
  10. 攔截Android的SMS並且停止轉發