私は次のように解決策がFiles.findとFiles.walkでの作業を見つける:それはwalkFileTreeよりもシンプルなようで
// Finding a file upto x level in File Directory using NIO Files.find
Path start = Paths.get("/Users/***/Documents/server_pull");
int maxDepth = 5;
try(Stream<Path> stream = Files.find(start,
maxDepth,
(path, attr) -> String.valueOf(path).endsWith(".json"))){
String fileName = stream
.sorted()
.map(String::valueOf)
.filter((path) -> {
//System.out.println("In Filter : "+path);
return String.valueOf(path).endsWith("system_health_12_55_TestServer.json");
})
.collect(Collectors.joining());
System.out.println("fileName : "+fileName);
}catch(Exception e){
e.printStackTrace();
}
// Finding a file upto x level in File Directory using NIO Files.walk
Path startWalk = Paths.get("/Users/***/Documents/server_pull");
int depth = 5;
try(Stream<Path> stream1 = Files.walk(startWalk,
depth)){
String walkedFile = stream1
.map(String::valueOf)
.filter(path -> {
return String.valueOf(path).endsWith("system_health_12_55_TestServer.json");
})
.sorted()
.collect(Collectors.joining());
System.out.println("walkedFile = "+walkedFile);
}catch(Exception e){
e.printStackTrace();
}
...
は、あなたがしようとしているものを表示します。 – Holger
@Holger Java NIOのファイルパッケージを試していますが、まだ解決策が見つかりませんでした。 – KayV
['Files.walkFileTree(パス開始、設定オプション、int maxDepth、FileVisitor <?スーパーパス>訪問者)']の 'maxDepth'パラメータに注意してください。]](https://docs.oracle.com/javase/8 /docs/api/java/nio/file/Files.html#walkFileTree-java.nio.file.Path-java.util.Set-int-java.nio.file.FileVisitor-)。このメソッド(またはいずれかの選択肢)を使用しようとしたときに何が失敗しているのかを記述した実際の問題文がなければ、これを解決する方法を教えることは不可能です。 –
Holger