我想问一下,如何从目录中存在的子文件夹中读取(.)类型的文件。
我有一个包含子文件夹的文件夹(子文件夹的数目不详)
C:\MainFolder
contains-> [subFolder_A][subFolder_B]......[subFolder_n]
每个子文件夹都包含大量文件,但其中一个文件的类型不同,特别是(.fingerprint)类型。
[subFolder_A] --> a.txt , atitle.txt , afin.fingerprint
[subFolder_B] --> b.txt , btitle.txt , bfin.fingerprint
...............................................
[subFolder_n] --> n.txt , ntitle.txt , nfin.fingerprint
所以每次我想把这个文件中的一个读到java…做一些函数,然后再读下一个,直到c:\main文件夹被扫描完。
我可以读一个,如果我给路径直接代码,但我想一些提示,如果有人知道采取一个自动的方式把他们都
Path path = Paths.get("C:\\MainFolder\\afin.fingerprint");
byte[] data;
byte[] fin;
try {
this.data = Files.readAllBytes(path);
byte[] data = Files.readAllBytes(path);
} catch (Exception e) {....}
fin=data;
3条答案
按热度按时间fzwojiic1#
可以使用流递归遍历文件树,例如:
yzckvree2#
您可以找到主文件夹的所有子文件夹,并在循环中扫描它们。对于每个子文件夹,您可以再次找到其中的所有文件,然后根据需要对其进行筛选。要列出文件夹的内容,请使用https://docs.oracle.com/javase/7/docs/api/java/io/file.html#listfiles()
js81xvg63#
您可以像这样在子目录中循环: