Java File 文件操作详解编程语言

取得文件夹大小 long 单位为M

    public static long getFileSize(File f) throws Exception {   
        long size = 0;   
        File flist[] = f.listFiles();   
        for (int i = 0; i < flist.length; i++) {   
            if (flist[i].isDirectory()) {   
                size = size + getFileSize(flist[i]);   
            } else {   
                size = size + flist[i].length();   
            }   
        }   
        return size;   
    }  

转换文件大小

public static String FormetFileSize(long fileS) {   
        DecimalFormat df = new DecimalFormat("#.00");   
        String fileSizeString = "";   
        if (fileS == 0) {   
            fileSizeString = "0KB";   
        } else if (fileS < 1024) {   
            fileSizeString = df.format((double) fileS) + "B";   
        } else if (fileS < 1048576) {   
            fileSizeString = df.format((double) fileS / 1024) + "KB";   
        } else if (fileS < 1073741824) {   
            fileSizeString = df.format((double) fileS / 1048576) + "MB";   
        } else {   
            fileSizeString = df.format((double) fileS / 1073741824) + "G";   
        }   
        return fileSizeString;   
    }  

删除指定目录下文件及目录

public static void deleteFolderFile(String filePath, boolean deleteThisPath)   
            throws IOException {   
        if (!TextUtils.isEmpty(filePath)) {   
            File file = new File(filePath);   
            if (file.isDirectory()) {// 处理目录   
                File files[] = file.listFiles();   
                for (int i = 0; i < files.length; i++) {   
                    deleteFolderFile(files[i].getAbsolutePath(), true);   
                }   
            }   
            if (deleteThisPath) {   
                // 如果是文件,删除   
                if (!file.isDirectory()) {   
                    file.delete();   
                } else {   
                    // 目录下没有文件或者目录,删除   
                    if (file.listFiles().length == 0) {   
                        file.delete();   
                    }   
                }   
            }   
        }   
    }  

    /**  
     * 获取文件名  
     *   
     * @param path  
     * @return  
     */   
    public static String getFileName(String path) {   
        int start = path.lastIndexOf("/") + 1;   
        return path.substring(start);   
    }   
       
    /**  
     * 获取文件名  
     *   
     * @param file  
     * @return  
     */   
    public static String getFileName(File file) {   
        String filePath = file.getAbsolutePath();   
        return getFileName(filePath);   
    }  

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/10579.html

(0)
上一篇 2021年7月19日 10:20
下一篇 2021年7月19日 10:20

相关推荐

发表回复

登录后才能评论