由不完整(文件)名称添加的文件

时间:2016-10-28 07:23:48

标签: java android file

我有一个方法:

public void setup () {
File file = new File(74761_control_*.xml)
//some code
}

其中* - 可变部分。事先不知道它将如何被称为文件。该程序需要加载具有相同名称的xml文件。使用标准Java SE API有一种优雅的方法吗?

1 个答案:

答案 0 :(得分:0)

java.nio包有一些方便的方法来使用文件名模式迭代目录:

Path dir = Paths.get("c:\\temp");
Iterator<Path> iterator = Files.newDirectoryStream(dir,  
                                    "74761_control_*.xml").iterator();

现在,迭代器“保持”所有适合上面的glob模式的路径。 其余的是迭代器/文件处理:

if (!iterator.hasNext()) {
    // file not found
} else {
    Path path = iterator.next();
    // process file, e.g. read all data
    Files.readAllBytes(path);
    // or open a reader
    try (BufferedReader reader = Files.newBufferedReader(path)) {
        // process reader
    }

    if (iterator.hasNext()) {
        // more than one file found
    }
}