Java从给定目录中获取所有文件名,包括子文件夹?

时间:2013-06-11 21:06:16

标签: java file directory

基本遍历整个文件夹结构。 例如,我有一个音乐文件夹,其中相册为文件夹。我在音乐文件夹中也有其他杂项歌曲。

我有这个,但它只接收其他音乐文件并给我一个FileNotFoundException,原因是访问被拒绝到其他相册文件夹

    File[] files = new File("C:/Users/Mayank/Desktop/Music/").listFiles();
    private class ButtonListener implements ActionListener {
    public void actionPerformed(ActionEvent arg0) {
        int check = (int) (Math.random()* files.length);
        isPlaying = false;
        mp3.close();
        mp3 = new MP3(files[check].getPath());
        mp3.play();
        isPlaying = true;
    }

编辑:我看到它重复了。谢谢大脑!

1 个答案:

答案 0 :(得分:2)

问题可能是你试图“播放”目录(它们也被列出)。检查FileNameFilter

对于一般性问题,创建一个递归方法,列出目录中的所有文件,如果它找到一个目录再次调用该方法传递新目录。