Как получить ресурсы classpath по расширению? - PullRequest
1 голос
/ 10 апреля 2020

Предположим, у меня есть несколько файлов ресурсов в моем classpath:

/a/b/c/x1.txt
/a/b/d/x2.txt
/a/b/e/x3.txt

Мой код не знает полные пути этих файлов ресурсов. Он знает только их расширение .txt.
Как бы вы написали функцию, возвращающую пути ресурсов с расширением .txt?

1 Ответ

1 голос
/ 10 апреля 2020

Попробуйте это:

Path path = Paths.get(YourClass.class.getResource("/resources").toURI());

List<String> result = Files.find(path, 100,
        (p, a) -> p.toString().toLowerCase().endsWith(".txt"))
        .map(Path::toString)
        .collect(Collectors.toList());
...