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中创建文件
  2. Android 删除指定文件代码
  3. Android中XML文件的使用
  4. Android使用HttpURLConnection上传文件
  5. Android so 文件简介
  6. Android 文件工具FileUtil
  7. android 在SD卡创建文件夹
  8. Android下各文件方法获取的路径
  9. android 用VideoView播放本地视频文件

随机推荐

  1. sqlserver 高性能分页实现分析
  2. SQL里类似SPLIT的分割字符串函数
  3. sqlserver存储过程中SELECT 与 SET 对变
  4. sqlserver Case函数应用介绍
  5. SQL 中sp_executesql存储过程的使用帮助
  6. SQL 复合查询条件(AND,OR,NOT)对NULL值的
  7. SQL 中 NULL值测试代码
  8. SQLServer 2000定时执行SQL语句
  9. sql 游标使用笔记
  10. sqlserver 手工实现差异备份的步骤