java查找最新文件 - 搬砖

    public static File findLatesFile(final String path, final String keyword) {
        return findLatesDirectory(path, keyword, false);
    }

    public static File findLatesDirectory(final String path, final String keyword) {
        return findLatesDirectory(path, keyword, true);
    }

    public static File findLatesDirectory(final String path, final String keyword, final boolean isDirectory) {
        if (StringUtils.isBlank(path)) {
            throw new RuntimeException("Path is invalid.");
        }
        File srcFolder = new File(path);
        if (srcFolder.isFile()) {
            throw new RuntimeException("Path is not a folder.");
        }
        File[] files = null;
        if (StringUtils.isNotBlank(keyword)) {
            files = srcFolder.listFiles(new FileFilter() { // search files for
                                                            // keyword
                public boolean accept(File pathname) {
                    if (isDirectory) {
                        return pathname.getName().contains(keyword);
                    }
                    return pathname.isFile() && pathname.getName().contains(keyword);
                }
            });
        } else {
            files = srcFolder.listFiles();
        }
        if (!CollectionUtils.isEmpty(Arrays.asList(files))) {
            Arrays.sort(files, Collections.reverseOrder());
            return files[0];
        }

        throw new RuntimeException("Directory is empty.  " + path);
    }

 

posted @ 2020-10-27 15:58  雾中的-松  阅读(280)  评论(0编辑  收藏  举报