僅用於我自己的學習,我試圖在我的音樂收藏中查找所有mp3文件,並找到所有沒有id3v2標籤的曲目。我的代碼給我提供了有關我指定的目錄的信息,但它不查找子目錄中的mp3文件。雖然我可以看到它識別目錄,因爲我可以將它們打印出來。請參閱下面的代碼。如果代碼的格式不正確,我非常抱歉。我是盲人,使用屏幕閱讀器,並且本網站上的格式化程序對我來說不是很方便。如何從特定目錄和所有子目錄中搜索特定擴展名的文件
public static int numberOfUntaggedTracks(String directory) throws UnsupportedTagException, InvalidDataException, IOException {
int untaggedTracks = 0;
File f = new File(directory);
File l[] = f.listFiles();
for (File x: l) {
if (x.isHidden() || !x.canRead())
continue;
if (x.isDirectory()) {
System.out.println("testing" + x.getPath());
numberOfUntaggedTracks(x.getPath());
} else if (x.getName().endsWith(".mp3")) {
Mp3File song = new Mp3File(x.getPath());
if (song.hasId3v1Tag() == false) {
untaggedTracks++;
}
//end of else if checking for .mp3 extension
}
//end of for loop
}
return untaggedTracks;
}
遞歸使用文件過濾 – Rugal