我有一个目录:

File dir = new File(MY_PATH);

我想列出名称以整数字符串表示的所有文件,例如“10”,“20”。我知道我应该使用:
dir.list(FilenameFilter filter);

如何定义我的FilenameFilter

P.S. 我的意思是文件名可以是任何整数字符串,例如“10”或“2000000”或“3452345”。只要文件名是整数字符串,就没有位数限制。

最佳答案

您应该在 accept 接口(interface)中覆盖 FilenameFilter ,并确保参数name仅包含数字字符。您可以使用 matches 进行检查:

String[] list = dir.list(new FilenameFilter() {
    @Override
    public boolean accept(File dir, String name) {
        return name.matches("[0-9]+");
    }
});

关于java - 使用FilenameFilter,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19932962/

10-10 19:24